mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-06 03:40:49 +01:00
146 lines
6.1 KiB
Plaintext
146 lines
6.1 KiB
Plaintext
/obj/mecha/combat/honker
|
|
desc = "Produced by \"Tyranny of Honk, INC\", this exosuit is designed as heavy clown-support. Used to spread the fun and joy of life. HONK!"
|
|
name = "H.O.N.K"
|
|
icon_state = "honker"
|
|
initial_icon = "honker"
|
|
step_in = 3
|
|
max_integrity = 140
|
|
deflect_chance = 60
|
|
internal_damage_threshold = 60
|
|
armor = list(MELEE = -20, BULLET = 0, LASER = 0, ENERGY = 0, BOMB = 0, RAD = 0, FIRE = 100, ACID = 100)
|
|
infra_luminosity = 5
|
|
operation_req_access = list(ACCESS_CLOWN)
|
|
wreckage = /obj/structure/mecha_wreckage/honker
|
|
add_req_access = 0
|
|
starting_voice = /obj/item/mecha_modkit/voice/honk
|
|
|
|
/obj/mecha/combat/honker/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/squeak, list('sound/effects/clownstep1.ogg' = 1, 'sound/effects/clownstep2.ogg' = 1), 50, falloff_exponent = 20, squeak_on_move = TRUE) //die off quick please
|
|
|
|
/obj/mecha/combat/honker/loaded/Initialize(mapload)
|
|
. = ..()
|
|
var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/honker
|
|
ME.attach(src)
|
|
ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/banana_mortar
|
|
ME.attach(src)
|
|
ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/mousetrap_mortar
|
|
ME.attach(src)
|
|
|
|
/obj/mecha/combat/honker/get_stats_part()
|
|
var/integrity = obj_integrity/max_integrity*100
|
|
var/cell_charge = get_charge()
|
|
var/tank_pressure = internal_tank ? round(internal_tank.return_pressure(),0.01) : "None"
|
|
var/tank_temperature = internal_tank ? internal_tank.return_temperature() : "Unknown"
|
|
var/cabin_pressure = round(cabin_air.return_pressure(),0.01)
|
|
var/output = {"[report_internal_damage()]
|
|
[integrity<30?"<font color='red'><b>DAMAGE LEVEL CRITICAL</b></font><br>":null]
|
|
[internal_damage&MECHA_INT_TEMP_CONTROL?"<font color='red'><b>CLOWN SUPPORT SYSTEM MALFUNCTION</b></font><br>":null]
|
|
[internal_damage&MECHA_INT_TANK_BREACH?"<font color='red'><b>GAS TANK HONK</b></font><br>":null]
|
|
[internal_damage&MECHA_INT_CONTROL_LOST?"<font color='red'><b>HONK-A-DOODLE</b></font> - <a href='byond://?src=[UID()];repair_int_control_lost=1'>Recalibrate</a><br>":null]
|
|
<b>IntegriHONK: </b> [integrity]%<br>
|
|
<b>PowerHONK charge: </b>[isnull(cell_charge)?"No powercell installed":"[cell.percent()]%"]<br>
|
|
<b>Air source: </b>[use_internal_tank?"Internal Airtank":"Environment"]<br>
|
|
<b>AirHONK pressure: </b>[tank_pressure]kPa<br>
|
|
<b>AirHONK temperature: </b>[tank_temperature]°K|[tank_temperature - T0C]°C<br>
|
|
<b>HONK pressure: </b>[cabin_pressure>WARNING_HIGH_PRESSURE ? "<font color='red'>[cabin_pressure]</font>": cabin_pressure]kPa<br>
|
|
<b>HONK temperature: </b> [cabin_air.temperature()]°K|[cabin_air.temperature() - T0C]°C<br>
|
|
<b>Lights: </b>[lights?"on":"off"]<br>
|
|
[dna?"<b>DNA-locked:</b><br> <span style='font-size:10px;letter-spacing:-1px;'>[dna]</span> \[<a href='byond://?src=[UID()];reset_dna=1'>Reset</a>\]<br>":null]
|
|
"}
|
|
return output
|
|
|
|
/obj/mecha/combat/honker/get_stats_html()
|
|
var/output = {"<html><meta charset='utf-8'>
|
|
<head><title>[name] data</title>
|
|
<style>
|
|
body {color: #00ff00; background: #32CD32; font-family:"Courier",monospace; font-size: 12px;}
|
|
hr {border: 1px solid #0f0; color: #fff; background-color: #000;}
|
|
a {padding:2px 5px;;color:#0f0;}
|
|
.wr {margin-bottom: 5px;}
|
|
.header {cursor:pointer;}
|
|
.open, .closed {background: #32CD32; color:#000; padding:1px 2px;}
|
|
.links a {margin-bottom: 2px;padding-top:3px;}
|
|
.visible {display: block;}
|
|
.hidden {display: none;}
|
|
</style>
|
|
<script language='javascript' type='text/javascript'>
|
|
[JS_BYJAX]
|
|
[JS_DROPDOWNS]
|
|
function ticker() {
|
|
setInterval(function(){
|
|
window.location='byond://?src=[UID()]&update_content=1';
|
|
document.body.style.color = get_rand_color_string();
|
|
document.body.style.background = get_rand_color_string();
|
|
}, 1000);
|
|
}
|
|
|
|
function get_rand_color_string() {
|
|
var color = new Array;
|
|
for(var i=0;i<3;i++){
|
|
color.push(Math.floor(Math.random()*255));
|
|
}
|
|
return "rgb("+color.toString()+")";
|
|
}
|
|
|
|
window.onload = function() {
|
|
dropdowns();
|
|
ticker();
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div id='content'>
|
|
[get_stats_part()]
|
|
</div>
|
|
<div id='eq_list'>
|
|
[get_equipment_list()]
|
|
</div>
|
|
<hr>
|
|
<div id='commands'>
|
|
[get_commands()]
|
|
</div>
|
|
</body>
|
|
</html>
|
|
"}
|
|
return output
|
|
|
|
/obj/mecha/combat/honker/get_commands()
|
|
var/output = {"<div class='wr'>
|
|
<div class='header'>Sounds of HONK:</div>
|
|
<div class='links'>
|
|
<a href='byond://?src=[UID()];play_sound=sadtrombone'>Sad Trombone</a>
|
|
</div>
|
|
</div>
|
|
"}
|
|
output += ..()
|
|
return output
|
|
|
|
|
|
/obj/mecha/combat/honker/get_equipment_list()
|
|
if(!length(equipment))
|
|
return
|
|
var/output = "<b>Honk-ON-Systems:</b><div style=\"margin-left: 15px;\">"
|
|
for(var/obj/item/mecha_parts/mecha_equipment/MT in equipment)
|
|
output += "<div id='\ref[MT]'>[MT.get_equip_info()]</div>"
|
|
output += "</div>"
|
|
return output
|
|
|
|
/obj/mecha/combat/honker/Topic(href, href_list)
|
|
..()
|
|
if(href_list["play_sound"])
|
|
if(usr != occupant)
|
|
return
|
|
switch(href_list["play_sound"])
|
|
if("sadtrombone")
|
|
playsound(src, 'sound/misc/sadtrombone.ogg', 50)
|
|
return
|
|
|
|
/obj/mecha/combat/honker/examine_more(mob/user)
|
|
. = ..()
|
|
. += "<i>A cheerful, colorful modification of a Durand chassis, the Honk mech is designed as heavy laughterfield support for producing mass honking casualties. \
|
|
Built and perfected by some of the most skilled Clowns ever known to the galaxy, with materials and labor provided by Donk Co, the Honk has somehow managed to have its design smuggled aboard almost ever Nanotrasen station, to the imminent laughter (screams) and joy (despair) of it's crew!</i>"
|
|
. += ""
|
|
. += "<i>Equipped with a massive HoNkER BlAsT 5000 horn and long range mortars capable of firing both slippery banana peels and dangerous mousetraps, the Honk is well equipped to provide a Clown with everything they need to 'entertain' a station's crew, and to draw the ire of any nearby Security. \
|
|
Honk!</i>"
|