Page 1 of 1

GIVE_WEAPON after dead.

Posted: 22 Jul 2012, 08:52
by Greg
Hi all.

I have a little problem with script. It don't work correctly.
PLAYER_PED p1 = ( 136.50, 137.50, 3.00 ) 10 180

COUNTER loop = 1

LEVELSTART

WHILE_EXEC ( loop = 1 )
IF ( CHECK_CHARACTER_HEALTH ( p1 , 0 ) )
GIVE_WEAPON ( p1 , ROCKET_LAUNCHER , 10 )
ENDIF
ENDWHILE

LEVELEND
Script description:
When the game started, player has 99 rockets (infinite). When he respawned, he has 10, 20, 30 ... 99 rockets (infinite again).

I want to player gets only 10 rockets.

I wait for help, thanks : )

Re: GIVE_WEAPON after dead.

Posted: 22 Jul 2012, 09:14
by Sektor
I'm surprised I've never played a map where everyone respawns with limited ammo. Usually it's none or infinite ammo.

This should do it:

[mis]
PLAYER_PED p1 = ( 136.50, 137.50, 3.00 ) 10 180

COUNTER loop = 1
COUNTER p1died = 0

LEVELSTART

GIVE_WEAPON ( p1, ROCKET_LAUNCHER, 10 )

WHILE_EXEC ( loop = 1 )

IF ( CHECK_CHARACTER_HEALTH ( p1 , 0 ))

IF ( HAS_CHARACTER_DIED ( p1 ))
SET p1died = 1
ELSE
IF ( p1died = 1 )
GIVE_WEAPON ( p1, ROCKET_LAUNCHER, 10 )
SET p1died = 0
ENDIF
ENDIF

ENDIF

ENDWHILE
LEVELEND
[/mis]

Re: GIVE_WEAPON after dead.

Posted: 22 Jul 2012, 09:31
by Greg
Thanks, Sektor. It's working very well!

I have a very interesting idea for my map : ).

Re: GIVE_WEAPON after dead.

Posted: 22 Jul 2012, 17:02
by Pyro
Like Sektor said, I'm surprised you don't just give 99 straight away. Inside that loop you'll get ammo so quickly you might as well make it 99 anyway! Still, Sektors' code will work for what you need for limited ammo after death.

Re: GIVE_WEAPON after dead.

Posted: 23 Jul 2012, 08:41
by T.M.
I would make it to give 1 rocket at a time instead. It would look better since you actually see the ammo going up then.