ItsMods
why is this not working? - Printable Version

+- ItsMods (https://www.itsmods.com)
+-- Forum: Archive (https://www.itsmods.com/Forum-Archive.html)
+--- Forum: Archive (https://www.itsmods.com/Forum-Archive--64.html)
+--- Thread: why is this not working? (/Thread-why-is-this-not-working.html)



why is this not working? - iAegle - 04-06-2011

at the weaponthink .. self.lastplayer contains the name of the player who took the gun from that spawn the last time, but its not saving the name Sad

Code:
CreateWeapon(weapon, weaponName, location, angle) { weaponModel = getWeaponModel( weapon ); if( weaponModel == "" ) weaponModel = weapon; if(!isDefined(angle)) angle = 0; weaponSpawn = spawn( "script_model", location + (0, 0, 35), 1 ); weaponSpawn setModel( weaponModel ); weaponSpawn.angles = angle; weaponSpawn thread WeaponThink( weapon, weaponName, location, angle ); weaponSpawn thread spinPickup( weaponSpawn ); weaponSpawn thread pickupFX( weaponSpawn, location, level.groundfxgreen ); wait 0.01; } WeaponThink(weapon, weaponName, location, angle) { self endon("disconnect"); weptrigger = spawn( "trigger_radius", location, 0, 35, 50 ); while(1) { weptrigger waittill( "trigger", player ); if(!isDefined(self.lastPlayer)) { self.lastPlayer = "nobody"; } if(level.campprotect == 1 && self.lastPlayer == player.name) { player iprintlnbold( "Stop camping at the " + weaponName + " spawn." ); warningsleft = 3 - player.warning; player iprintlnbold( "You've got " + warningsleft + " warnings left till suicide." ); player.warning++; if(player.warning == 3) { player suicide(); } } if(distance(location, player.origin) < 50) { lastPlayer = player.name; player.hint = "Press ^3[{+activate}] ^7to pick up " + weaponName; if(player useButtonPressed()) { player takeWeapon(player getCurrentWeapon()); player _giveWeapon( weapon ); player switchToWeapon( weapon ); self delete(); weptrigger delete(); level thread weaponRespawnThink(weapon, weaponName, location, angle); } } wait .05; } } weaponRespawnThink(weapon, weaponName, location, angle) { unavailable = spawn( "script_origin", location, 1 ); unavailable thread pickupFX( unavailable, location, level.groundfxred ); wait 15; unavailable delete(); createWeapon(weapon, weaponName, location, angle); }



RE: why is this not working? - SuperNovaAO - 04-06-2011


lastPlayer = player.name;

instead of self.lastPlayer =


RE: why is this not working? - iAegle - 04-06-2011

Thanks! Big Grin+
Now its killing me always XD

i added a wait 5; but now i cannot pick up the weapon even if i'm not the one who picked it up last Tongue

Code:
WeaponThink(weapon, weaponName, location, angle) { self endon("disconnect"); weptrigger = spawn( "trigger_radius", location, 0, 35, 50 ); while(1) { weptrigger waittill( "trigger", player ); if(!isDefined(self.lastPlayer)) { self.lastPlayer = ""; } if(level.campprotect == 1 && self.lastPlayer == player.name) { player iprintlnbold( "Stop camping at the " + weaponName + " spawn." ); warningsleft = 3 - player.warning; player iprintlnbold( "You've got " + warningsleft + " warnings left till suicide." ); player.warning++; if(player.warning == 3) { player suicide(); } wait 5; } if(distance(location, player.origin) < 50) { self.lastPlayer = player.name; player.hint = "Press ^3[{+activate}] ^7to pick up " + weaponName; if(player useButtonPressed()) { player takeWeapon(player getCurrentWeapon()); player _giveWeapon( weapon ); player switchToWeapon( weapon ); self delete(); weptrigger delete(); level thread weaponRespawnThink(weapon, weaponName, location, angle); } } wait .05; } }



RE: why is this not working? - met94 - 04-06-2011

Code:
WeaponThink(weapon, weaponName, location, angle, lastPlayer) { self endon("disconnect"); weptrigger = spawn( "trigger_radius", location, 0, 35, 50 ); while(1) { weptrigger waittill( "trigger", player ); if(level.campprotect == 1 && lastPlayer == player && isDefined(lastPlayer)) { player iprintlnbold( "Stop camping at the " + weaponName + " spawn." ); warningsleft = 3 - player.warning; player iprintlnbold( "You've got " + warningsleft + " warnings left till suicide." ); player.warning++; if(player.warning == 3) { player suicide(); } wait 5; } if(distance(location, player.origin) < 50) { player.hint = "Press ^3[{+activate}] ^7to pick up " + weaponName; if(player useButtonPressed()) { player takeWeapon(player getCurrentWeapon()); player _giveWeapon( weapon ); player switchToWeapon( weapon ); self delete(); weptrigger delete(); level thread weaponRespawnThink(weapon, weaponName, location, angle, player); } } wait .05; } } weaponRespawnThink(weapon, weaponName, location, angle, lastPlayer) { unavailable = spawn( "script_origin", location, 1 ); unavailable thread pickupFX( unavailable, location, level.groundfxred ); wait 15; unavailable delete(); createWeapon(weapon, weaponName, location, angle, lastPlayer); } CreateWeapon(weapon, weaponName, location, angle, lastPlayer) { weaponModel = getWeaponModel( weapon ); if( weaponModel == "" ) weaponModel = weapon; if(!isDefined(angle)) angle = 0; weaponSpawn = spawn( "script_model", location + (0, 0, 35), 1 ); weaponSpawn setModel( weaponModel ); weaponSpawn.angles = angle; weaponSpawn thread WeaponThink( weapon, weaponName, location, angle, lastPlayer ); weaponSpawn thread spinPickup( weaponSpawn ); weaponSpawn thread pickupFX( weaponSpawn, location, level.groundfxgreen ); wait 0.01; }

?