I've been quite busy recently; anyway, I've finished the brown Dragon component (which is called improved small teeth pass... why?), but I haven't been able to test it yet (I'll have to change quite a lot ov variables to test that). Anyway, I can upload it, if someone else has time to test it (the installation works and
NI says there are no problems, but I haven't played that).
There were loads of resources from
TDD, which were not included in the folder, but I'll include them in the folder I'll upload.
In the code, I've written two different sets of instructions to see if spell.ids contains some particular lines. Which is best?
COPY_EXISTING - ~spell.ids~ ~override~
SPRINT iceshard ~Forcespell(Lastseenby(Myself),COM_ICE_SHARD)~
BUT_ONLY
IF ~COM_ICE_SHARD~
ACTION_IF (IDS_OF_SYMBOL (~spell~ ~COM_ICE_SHARD~)>0) BEGIN
OUTER_SPRINT iceshard ~Forcespell(Lastseenby(Myself),COM_ICE_SHARD)~
END
I think some lines from the main component could be moved in an ALWAYS action (and removed from any other subcomponent I have already posted, if there are any):
ALWAYS SILENT
APPEND ~GTIMES.IDS~ ~6 ONE_ROUND~ UNLESS ~ONE_ROUND~
APPEND ~GTIMES.IDS~ ~12 TWO_ROUNDS~ UNLESS ~TWO_ROUNDS~
APPEND ~GTIMES.IDS~ ~18 THREE_ROUNDS~ UNLESS ~THREE_ROUNDS~
APPEND ~GTIMES.IDS~ ~24 FOUR_ROUNDS~ UNLESS ~FOUR_ROUNDS~
APPEND ~GTIMES.IDS~ ~30 FIVE_ROUNDS~ UNLESS ~FIVE_ROUNDS~
APPEND ~GTIMES.IDS~ ~36 SIX_ROUNDS~ UNLESS ~SIX_ROUNDS~
APPEND ~GTIMES.IDS~ ~42 SEVEN_ROUNDS~ UNLESS ~SEVEN_ROUNDS~
APPEND ~GTIMES.IDS~ ~48 EIGHT_ROUNDS~ UNLESS ~EIGHT_ROUNDS~
APPEND ~GTIMES.IDS~ ~54 NINE_ROUNDS~ UNLESS ~NINE_ROUNDS~
APPEND ~GTIMES.IDS~ ~60 TEN_ROUNDS~ UNLESS ~TEN_ROUNDS~
APPEND ~GTIMES.IDS~ ~60 ONE_TURN~ UNLESS ~ONE_TURN~
APPEND ~GTIMES.IDS~ ~120 TWO_TURNS~ UNLESS ~TWO_TURNS~
APPEND ~GTIMES.IDS~ ~180 THREE_TURNS~ UNLESS ~THREE_TURNS~
APPEND ~GTIMES.IDS~ ~240 FOUR_TURNS~ UNLESS ~FOUR_TURNS~
APPEND ~GTIMES.IDS~ ~300 FIVE_TURNS~ UNLESS ~FIVE_TURNS~
APPEND ~GTIMES.IDS~ ~300 ONE_HOUR~ UNLESS ~ONE_HOUR~
APPEND ~GTIMES.IDS~ ~360 SIX_TURNS~ UNLESS ~SIX_TURNS~
APPEND ~GTIMES.IDS~ ~420 SEVEN_TURNS~ UNLESS ~SEVEN_TURNS~
APPEND ~GTIMES.IDS~ ~480 EIGHT_TURNS~ UNLESS ~EIGHT_TURNS~
APPEND ~GTIMES.IDS~ ~540 NINE_TURNS~ UNLESS ~NINE_TURNS~
APPEND ~GTIMES.IDS~ ~600 TEN_TURNS~ UNLESS ~TEN_TURNS~
APPEND ~GTIMES.IDS~ ~600 TWO_HOURS~ UNLESS ~TWO_HOURS~
APPEND ~GTIMES.IDS~ ~900 FIFTEEN_TURNS~ UNLESS ~FIFTEEN_TURNS~
APPEND ~GTIMES.IDS~ ~900 THREE_HOURS~ UNLESS ~THREE_HOURS~
APPEND ~GTIMES.IDS~ ~1200 FOUR_HOURS~ UNLESS ~FOUR_HOURS~
APPEND ~GTIMES.IDS~ ~1500 FIVE_HOURS~ UNLESS ~FIVE_HOURS~
APPEND ~GTIMES.IDS~ ~1800 SIX_HOURS~ UNLESS ~SIX_HOURS~
APPEND ~GTIMES.IDS~ ~2100 SEVEN_HOURS~ UNLESS ~SEVEN_HOURS~
APPEND ~GTIMES.IDS~ ~2400 EIGHT_HOURS~ UNLESS ~EIGHT_HOURS~
APPEND ~GTIMES.IDS~ ~2700 NINE_HOURS~ UNLESS ~NINE_HOURS~
APPEND ~GTIMES.IDS~ ~3000 TEN_HOURS~ UNLESS ~TEN_HOURS~
APPEND ~GTIMES.IDS~ ~3300 ELEVEN_HOURS~ UNLESS ~ELEVEN_HOURS~
APPEND ~GTIMES.IDS~ ~3600 TWELVE_HOURS~ UNLESS ~TWELVE_HOURS~
VERBOSE
END
This would allow many scripts to be compiled.
From the level50 component, many tra-strings had remained unused, and I'll need the following two:
English
@451 Topaz Dragon
@450 Brown Dragon
Italian
@450 Drago di Topazio
@451 Drago Marrone
The code is:
/////////////////////SMALL TEETH PASS//////////////////////////
// Brown Dragon code by Hlidskialf; Brown Dragon by Kensai Ryu
BEGIN @395
SILENT //ADD_SPELL is quite spammy
APPEND ~spell.ids~ ~2302 WIZARD_REMOVE_MAGIC~ UNLESS ~WIZARD_REMOVE_MAGIC~
ADD_SPELL ~BPv180/BrownDragon/spin396.spl~ 3 1 TOPAZ_DRAGON_BREATH
//the following lines check wether a TDD spell exists, and only add a line if TDD is installed
OUTER_SPRINT iceshard ~~
/*
COPY_EXISTING - ~spell.ids~ ~override~
SPRINT iceshard ~Forcespell(Lastseenby(Myself),COM_ICE_SHARD)~
BUT_ONLY
IF ~COM_ICE_SHARD~
*/
VERBOSE
//These lines could replace the ones I've commented out
ACTION_IF (IDS_OF_SYMBOL (~spell~ ~COM_ICE_SHARD~)>0) BEGIN
OUTER_SPRINT iceshard ~Forcespell(Lastseenby(Myself),COM_ICE_SHARD)~
END
COMPILE EVALUATE_BUFFER ~BPv180/BrownDragon/baf~
ACTION_BASH_FOR ~BPv180/BrownDragon/FileDump~ ~.*~ BEGIN
ACTION_IF NOT FILE_EXISTS_IN_GAME ~%BASH_FOR_FILE%~ BEGIN
COPY ~BPv180/BrownDragon/FileDump/%BASH_FOR_FILE%~ ~override~ //don't copy if exists
END
END
COPY ~BPv180/BrownDragon/bpdragtp.cre~ ~override~
SAY NAME1 @451 //@451 must be topaz dragon
SAY NAME2 @451
PATCH_IF NOT FILE_EXISTS_IN_GAME ~BPWDASGT.bcs~ BEGIN
WRITE_ASCII %SCRIPT_DEFAULT% ~WDASIGHT~
END
COPY ~BPv180/BrownDragon/bpdrgbrn.cre~ ~override~
SAY NAME1 @450 //@450 must become Brown Dragon
SAY NAME2 @450
ACTION_IF NOT FILE_EXISTS_IN_GAME ~BPSULDRA.cre~ BEGIN
COPY ~BPv180/SULDAN/BPSULDRA.CRE~ ~override~ //compatibility all right?
COMPILE ~BPv180/SULDAN/BPSULDRA.baf~
END
EXTEND_BOTTOM ~AR1700.bcs~ ~BPv180/BrownDragon/bAR1700.bcs~
I'll still have to check that all spells of the dragons exist.
The folder is: (I have moved some pieces from the CRE and SNIP folder of BP here; you can remove them unless they are used by the core component as well)
BrownDragon.rar 7.22K
222 downloads
Edited by Turambar, 28 October 2010 - 07:59 AM.