Advertisement
TerminusEst13

Untitled

Feb 26th, 2015
303
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.77 KB | None | 0 0
  1. // Pastebinning the relevant code here. All the irrelevant code has been snipped.
  2.  
  3. // The tl;dr of the matter is how Iron Maiden mode works is that on picking up the weapon,
  4. // the player is given a custominventory item that, when used, jumps to a Henshin state
  5. // that adjusts the player's inventory and gives them dummy items.
  6.  
  7. // The problem is that partway through the state, it simply...stops.
  8. // The Henshin state just stops working, and the player is left with a half-finished
  9. // set-up that results in a lot of breakage.
  10.  
  11. // This is exclusive to 2.0. In 1.3, it works perfectly fine as intended.
  12.  
  13. actor KamenRiderModeActivate : CustomInventory
  14. {
  15. +INVENTORY.UNDROPPABLE
  16. +INVBAR
  17. Inventory.Amount 1
  18. Inventory.MaxAmount 1
  19. States
  20. {
  21. Use:
  22. TNT1 A 0 A_JumpIfInventory("GotIronMaiden",1,"UseCheck") // If the player has the BFG9000 slot, it jumps.
  23. TNT1 A 1
  24. fail
  25. UseCheck:
  26. TNT1 A 0 A_JumpifInventory("HenshinCooldown",1,"UseFail")
  27. TNT1 A 0 A_JumpifInventory("HenshinActivated",1,"UseFail") // Technically not needed, but I'd rather not spam the server with ACS.
  28. TNT1 A 0 A_GiveInventory("HenshinActivated",1) // Activates the Henshin state on the weapon.
  29. TNT1 A 0 ACS_ExecuteAlways(WEEB_DECORATE,0,WEEB_DEC_HENSHIN,0,0) // This script simply takes away HenshinActivated after 10 tics.
  30. TNT1 A 1
  31. fail
  32. UseFail:
  33. TNT1 A 0
  34. fail
  35. }
  36. }
  37.  
  38. actor "Kharon + Acacia A-22" : Kharon
  39. {
  40. Weapon.AmmoUse2 1
  41. Weapon.AmmoType2 "WeebClip"
  42. Weapon.SlotNumber 2
  43. States
  44. {
  45. Ready:
  46. TNT1 A 0 A_JumpIfInventory("TimeToLaunchOctopus",1,"PrepareToHoldAttackNormal")
  47. TNT1 A 0 A_JumpIfInventory("WaitingTooLong",0,"IdleAnimation")
  48. TNT1 A 0 A_JumpIfInventory("HenshinActivated",1,"HenshinCheck")
  49. WEPA A 1 A_WeaponReady
  50. Loop
  51.  
  52. [...]
  53.  
  54. HenshinCheck:
  55. TNT1 A 0 A_JumpIfInventory("SuperMeterCounter",100,"Henshin") // If the player doesn't have enough ammo, it doesn't work.
  56. TNT1 A 1
  57. TNT1 A 0 A_PlaySoundEx("henshin/error2","soundslot5",0,0)
  58. TNT1 A 0 A_PlaySoundEx("henshin/error","soundslot6",0,0)
  59. TNT1 A 0 A_PlaySoundEx("*pain","sounslot7",0,0)
  60. TNT1 A 0 A_Print("Error: Insufficient soul reserve.")
  61. TNT1 A 0 A_GiveInventory("HenshinCooldown",70)
  62. TNT1 A 0 A_SetBlend("White",1.0,35)
  63. TNT1 A 0 A_Recoil(10)
  64. TNT1 A 0 A_TakeInventory("HenshinActivated",1)
  65. TNT1 A 0 A_ClearRefire
  66. goto Fired2
  67. Henshin:
  68. WEPA BCD 1
  69. TNT1 A 1
  70. TNT1 A 0 A_PlaySoundEx("henshin/click","soundslot6",0,0)
  71. TNT1 A 4 A_TakeInventory("KharonSwung",1)
  72. TNT1 A 0 A_PlayWeaponSound("henshin/foley")
  73. HNSH AABBCDE 1
  74. HNSH F 15 A_PlaySoundEx("henshin/call","soundslot6",0,0)
  75. TNT1 A 0 A_PlayWeaponSound("henshin/foley")
  76. HNSH FGHIIJJKKLL 1
  77. TNT1 A 0 A_PlaySoundEx("hammer/spark","soundslot5",0,0)
  78. TNT1 A 0 A_PlayWeaponSound("henshin/foley")
  79. HNSH MNOOPP 1
  80. TNT1 A 0 A_PlayWeaponSound("henshin/foley")
  81. HNSH QRST 1
  82. TNT1 A 0 A_PlaySoundEx("henshin/donarmor","soundslot6",0,0)
  83. HNSH UVWX 2
  84. HNSH Y 2 A_SetBlend("Red",0.1,3)
  85. HNSH Z 2 A_SetBlend("Red",0.2,3)
  86. HNSN A 2 A_SetBlend("Red",0.3,3)
  87. HNSN B 2 A_SetBlend("Red",0.5,3)
  88. HNSN C 2 A_SetBlend("Red",0.7,3)
  89. HNSN D 2 A_SetBlend("Red",0.9,3)
  90. HNSN D 2 A_SetBlend("Red",1.0,70)
  91. TNT1 A 0 A_GiveInventory("Iron Fist",1)
  92. TNT1 A 0 A_SelectWeapon("Iron Fist")
  93. TNT1 A 0 A_SpawnItemEx("IronMaidenRepel",0,0,0,0,0,0,0,48)
  94. TNT1 A 0 ACS_ExecuteAlways(275,0,WEEB_DEC_CHANGEMUS,0,0)
  95. TNT1 A 0 A_TakeInventory("AlreadyInLevel",1)
  96. TNT1 A 0 A_TakeInventory("Kharon + Legion",1)
  97. TNT1 A 0 A_TakeInventory("Kharon + Frosthammer",1)
  98. TNT1 A 0 A_TakeInventory("Kharon + Testament",1)
  99. TNT1 A 0 A_TakeInventory("Kharon + Sabbath",1)
  100. TNT1 A 0 A_TakeInventory("Kharon + Exodus",1)
  101. TNT1 A 0 A_TakeInventory("Kharon + Omen",1)
  102. TNT1 A 0 A_TakeInventory("Kharon + Acacia A-22",1)
  103. TNT1 A 0 A_TakeInventory("Kharon",1)
  104. // The problem is right here. Somehow, for some reason, everything stops working here.
  105. // Everything past this point simple doesn't happen.
  106. TNT1 A 0 A_TakeInventory("HenshinActivated",1) // Isn't taken.
  107. TNT1 A 0 A_TakeInventory("SuperMeterCounter",40) // Isn't taken.
  108. TNT1 A 0 A_GiveInventory("IronMaidenArmor2",100) // Isn't given.
  109. TNT1 A 0 A_GiveInventory("InIronMaiden",1) // Isn't given.
  110. TNT1 A 0 A_GiveInventory("IronMaidenSpeed",1) // Isn't given.
  111. TNT1 A 1
  112. goto Deselect
  113. }
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement