ItsMods

Full Version: why is this not working?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
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);
}

lastPlayer = player.name;

instead of self.lastPlayer =
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;
    }
}
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;
}

?