SphereCommunity
Help scrip sistem chest - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: Script Help (/Forum-Script-Help)
+--- Thread: Help scrip sistem chest (/Thread-Help-scrip-sistem-chest)



Help scrip sistem chest - victorstelzer - 10-13-2012 12:45 AM

can someone help me solve this problem this script

He creates one char at a time, SERV.NEWNPC = c_rotting_corpse


How can he create the 3 monster once

SERV.NEWNPC = c_rotting_corpse
SERV.NEWNPC = c_dragon_small_red
SERV.NEWNPC = c_daemon

and only when the monster 3 kill the bau will open

-----------------------------------------------------------

ON=@Timer
IF (<COUNT>)
TIMER=10
ELSE
MORE1=1
DORAND 3
SERV.NEWNPC=c_rotting_corpse
SERV.NEWNPC=c_dragon_small_red
SERV.NEWNPC=c_daemon
ENDDO
NEW.TAG.CHEST=<UID>
NEW.EVENTS +e_chestprotector
NEW.P=<P>
NEW.MOVENEAR <UID> 1
WHILE (<NEW.ISSTUCK>)
NEW.MOVENEAR <UID> 1
ENDWHILE
NEW.HOME=<NEW.P>
NEW.HOMEDIST=5
TIMER=<EVAL 60*60*<R12,26>>
SERV.NEWITEM i_gold,{1000 8000},<UID>
FOR <R1,2>
RANDMAGICITEM
ENDFOR
IF !(<R30>)
SERV.NEWITEM i_mapa_tesouro,1,<UID>
ENDIF
IF !(<R300>)
DORAND 2
SERV.NEWITEM <HVAL {minorartis}>
SERV.NEWITEM {i_colored_anvil 14 i_leather_gloves_mining 14 i_studded_gloves_mining 14 i_ringmail_gloves_mining 10 i_ancient_smithy_hammer 6 i_powder_Temperment 5 i_clothing_bless_deed 4 i_power_scroll 2}
ENDDO
NEW.CONT=<UID>
ENDIF
ENDIF
UPDATE
RETURN 1

ON=@Dropon_Self
IF (<SRC.ISPLAYER>)
RETURN 1
ENDIF

ON=@Dclick
IF (<MORE1>) && !(<SRC.ISGM>)
SAY @946,3,1 Voce deve primeiro matar os defensores do bau.
RETURN 1
ENDIF

[EVENTS e_chestprotector]
ON=@Death
TRY UID.<TAG0.CHEST>.MORE1=<HVAL <UID.<TAG0.CHEST>.MORE1>-1>
IF !(<UID.<TAG0.CHEST>.MORE1>)
TRY UID.<TAG0.CHEST>.SAY @946,3,1 Fechadura aberta.
ENDIF

[EOF]


RE: Help scrip sistem chest - Mordaunt - 10-13-2012 03:54 AM

Lose the DORAND lines, that is picking 1 of those 2 npcs at random


RE: Help scrip sistem chest - Anarch Cassius - 10-13-2012 08:05 AM

More specifically.

Run this block for each NPC, maybe make it in to a function. Get rid of the DORAND and anything moved to this block.

Code:
SERV.NEWNPC=c_daemon
NEW.TAG.CHEST=<UID>
NEW.EVENTS +e_chestprotector
NEW.P=<P>
NEW.MOVENEAR <UID> 1
WHILE (<NEW.ISSTUCK>)
NEW.MOVENEAR <UID> 1
ENDWHILE
NEW.HOME=<NEW.P>
NEW.HOMEDIST=5
TIMER=<EVAL 60*60*<R12,26>>

Code:
//called when the chest is default, syntax: f_make_Chest_guardian c_daemon
[FUNCTION f_make_chest_guardian]
SERV.NEWNPC=<ARGS>
NEW.TAG.CHEST=<UID>
NEW.EVENTS +e_chestprotector
NEW.P=<P>
NEW.MOVENEAR <UID> 1
WHILE (<NEW.ISSTUCK>)
NEW.MOVENEAR <UID> 1
ENDWHILE
NEW.HOME=<NEW.P>
NEW.HOMEDIST=5
TIMER=<EVAL 60*60*<R12,26>>

Then change MORE1=1 to MORE1=3. If you want more guardians, spawn more and set the number higher.