diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index c8f4cefbb9f..7c477a36099 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -54,158 +54,160 @@ icon_screen = "battle" circuit = /obj/item/circuitboard/arcade/battle var/enemy_name = "Space Villain" - var/temp = "Winners Don't Use Spacedrugs" //Temporary message, for attack messages, etc - var/player_hp = 30 //Player health/attack points + /// event message for attack messages, etc + var/previous_event = "Make your move!" + /// Player health/attack points + var/player_hp = 30 + /// the highest amount of health that the player has held + var/player_max_hp = 30 + /// player magic points var/player_mp = 10 - var/enemy_hp = 45 //Enemy health/attack points + /// the highest amount of mana that the player has held + var/player_max_mp = 10 + /// Enemy health/attack points + var/enemy_hp = 45 + /// the highest amount of health that the enemy achieves - this never changes, but avoids magic numbers + var/enemy_max_hp = 45 + /// enemy magic points var/enemy_mp = 20 - var/gameover = 0 - var/blocked = 0 //Player cannot attack/heal while set - var/turtle = 0 + var/gameover = FALSE + /// a counter of whether the last few player inputs were to heal, incurs a turtling penalty when emagged + var/passive_streak = 0 + COOLDOWN_DECLARE(spam_cooldown) -/obj/machinery/computer/arcade/battle/Reset() - var/name_action - var/name_part1 - var/name_part2 +/obj/machinery/computer/arcade/battle/proc/generate_name() + var/name_action = pick("Defeat ", "Annihilate ", "Save ", "Strike ", "Stop ", "Destroy ", "Robust ", "Romance ", "Pwn ", "Own ", "Ban ") - name_action = pick("Defeat ", "Annihilate ", "Save ", "Strike ", "Stop ", "Destroy ", "Robust ", "Romance ", "Pwn ", "Own ", "Ban ") - - name_part1 = pick("the Automatic ", "Farmer ", "Lord ", "Professor ", "the Cuban ", "the Evil ", "the Dread King ", "the Space ", "Lord ", "the Great ", "Duke ", "General ") - name_part2 = pick("Melonoid", "Murdertron", "Sorcerer", "Ruin", "Jeff", "Ectoplasm", "Crushulon", "Uhangoid", "Vhakoid", "Peteoid", "slime", "Griefer", "ERPer", "Lizard Man", "Unicorn", "Bloopers") + var/name_part1 = pick("the Automatic ", "Farmer ", "Lord ", "Professor ", "the Cuban ", "the Evil ", "the Dread King ", "the Space ", "Lord ", "the Great ", "Duke ", "General ") + var/name_part2 = pick("Melonoid", "Murdertron", "Sorcerer", "Ruin", "Jeff", "Ectoplasm", "Crushulon", "Uhangoid", "Vhakoid", "Peteoid", "Slime", "Griefer", "ERPer", "Lizard Man", "Unicorn", "Bloopers") enemy_name = replacetext((name_part1 + name_part2), "the ", "") name = (name_action + name_part1 + name_part2) +/obj/machinery/computer/arcade/battle/Reset() + previous_event = initial(previous_event) + player_hp = initial(player_hp) + player_max_hp = initial(player_max_hp) + player_mp = initial(player_mp) + player_max_mp = initial(player_max_mp) + enemy_hp = initial(enemy_hp) + enemy_max_hp = initial(enemy_max_hp) + enemy_mp = initial(enemy_mp) + gameover = initial(gameover) + passive_streak = initial(enemy_mp) + +/obj/machinery/computer/arcade/battle/Initialize(mapload) + . = ..() + generate_name() + /obj/machinery/computer/arcade/battle/attack_hand(mob/user as mob) if(..()) return - user.set_machine(src) - var/dat = "Close" - dat += "
'+(t?e:_(e,!0))+"\n":""+(t?e:_(e,!0))+"\n"}},{key:"blockquote",value:function(e){return"\n".concat(e,"\n")}},{key:"html",value:function(e){return e}},{key:"heading",value:function(e,n,t,r){if(this.options.headerIds){var i=this.options.headerPrefix+r.slug(t);return"
".concat(e,"
\n")}},{key:"table",value:function(e,n){return n&&(n="".concat(n,"")),"".concat(e,"")}},{key:"br",value:function(){return this.options.xhtml?"