mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 19:52:40 +00:00
@@ -13,6 +13,8 @@
|
|||||||
using.icon = ui_style
|
using.icon = ui_style
|
||||||
using.icon_state = "intent_"+mymob.a_intent
|
using.icon_state = "intent_"+mymob.a_intent
|
||||||
using.screen_loc = ui_acti
|
using.screen_loc = ui_acti
|
||||||
|
using.color = ui_color
|
||||||
|
using.alpha = ui_alpha
|
||||||
using.layer = 20
|
using.layer = 20
|
||||||
src.adding += using
|
src.adding += using
|
||||||
action_intent = using
|
action_intent = using
|
||||||
@@ -27,6 +29,7 @@
|
|||||||
using.name = "help"
|
using.name = "help"
|
||||||
using.icon = ico
|
using.icon = ico
|
||||||
using.screen_loc = ui_acti
|
using.screen_loc = ui_acti
|
||||||
|
using.alpha = ui_alpha
|
||||||
using.layer = 21
|
using.layer = 21
|
||||||
src.adding += using
|
src.adding += using
|
||||||
help_intent = using
|
help_intent = using
|
||||||
@@ -38,6 +41,7 @@
|
|||||||
using.name = "disarm"
|
using.name = "disarm"
|
||||||
using.icon = ico
|
using.icon = ico
|
||||||
using.screen_loc = ui_acti
|
using.screen_loc = ui_acti
|
||||||
|
using.alpha = ui_alpha
|
||||||
using.layer = 21
|
using.layer = 21
|
||||||
src.adding += using
|
src.adding += using
|
||||||
disarm_intent = using
|
disarm_intent = using
|
||||||
@@ -49,6 +53,7 @@
|
|||||||
using.name = "grab"
|
using.name = "grab"
|
||||||
using.icon = ico
|
using.icon = ico
|
||||||
using.screen_loc = ui_acti
|
using.screen_loc = ui_acti
|
||||||
|
using.alpha = ui_alpha
|
||||||
using.layer = 21
|
using.layer = 21
|
||||||
src.adding += using
|
src.adding += using
|
||||||
grab_intent = using
|
grab_intent = using
|
||||||
@@ -60,6 +65,7 @@
|
|||||||
using.name = "harm"
|
using.name = "harm"
|
||||||
using.icon = ico
|
using.icon = ico
|
||||||
using.screen_loc = ui_acti
|
using.screen_loc = ui_acti
|
||||||
|
using.alpha = ui_alpha
|
||||||
using.layer = 21
|
using.layer = 21
|
||||||
src.adding += using
|
src.adding += using
|
||||||
hurt_intent = using
|
hurt_intent = using
|
||||||
@@ -440,23 +446,24 @@
|
|||||||
|
|
||||||
//Handle the gun settings buttons
|
//Handle the gun settings buttons
|
||||||
mymob.gun_setting_icon = new /obj/screen/gun/mode(null)
|
mymob.gun_setting_icon = new /obj/screen/gun/mode(null)
|
||||||
|
//mymob.gun_setting_icon.color = ui_color
|
||||||
|
mymob.gun_setting_icon.alpha = ui_alpha
|
||||||
|
|
||||||
|
mymob.item_use_icon = new /obj/screen/gun/item(null)
|
||||||
|
//mymob.item_use_icon.color = ui_color
|
||||||
|
mymob.item_use_icon.alpha = ui_alpha
|
||||||
|
|
||||||
|
mymob.gun_move_icon = new /obj/screen/gun/move(null)
|
||||||
|
//mymob.gun_move_icon.color = ui_color
|
||||||
|
mymob.gun_move_icon.alpha = ui_alpha
|
||||||
|
|
||||||
|
mymob.gun_run_icon = new /obj/screen/gun/run(null)
|
||||||
|
//mymob.gun_run_icon.color = ui_color
|
||||||
|
mymob.gun_run_icon.alpha = ui_alpha
|
||||||
|
|
||||||
if (mymob.client)
|
if (mymob.client)
|
||||||
if (mymob.client.gun_mode) // If in aim mode, correct the sprite
|
if (mymob.client.gun_mode) // If in aim mode, correct the sprite
|
||||||
mymob.gun_setting_icon.dir = 2
|
mymob.gun_setting_icon.dir = 2
|
||||||
for(var/obj/item/weapon/gun/G in mymob) // If targeting someone, display other buttons
|
|
||||||
if (G.target)
|
|
||||||
mymob.item_use_icon = new /obj/screen/gun/item(null)
|
|
||||||
if (mymob.client.target_can_click)
|
|
||||||
mymob.item_use_icon.dir = 1
|
|
||||||
src.adding += mymob.item_use_icon
|
|
||||||
mymob.gun_move_icon = new /obj/screen/gun/move(null)
|
|
||||||
if (mymob.client.target_can_move)
|
|
||||||
mymob.gun_move_icon.dir = 1
|
|
||||||
mymob.gun_run_icon = new /obj/screen/gun/run(null)
|
|
||||||
if (mymob.client.target_can_run)
|
|
||||||
mymob.gun_run_icon.dir = 1
|
|
||||||
src.adding += mymob.gun_run_icon
|
|
||||||
src.adding += mymob.gun_move_icon
|
|
||||||
|
|
||||||
|
|
||||||
mymob.client.screen = null
|
mymob.client.screen = null
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ datum/controller/vote
|
|||||||
var/list/voted = list()
|
var/list/voted = list()
|
||||||
var/list/voting = list()
|
var/list/voting = list()
|
||||||
var/list/current_votes = list()
|
var/list/current_votes = list()
|
||||||
|
var/list/additional_text = list()
|
||||||
var/auto_muted = 0
|
var/auto_muted = 0
|
||||||
|
|
||||||
New()
|
New()
|
||||||
@@ -63,6 +64,7 @@ datum/controller/vote
|
|||||||
voted.Cut()
|
voted.Cut()
|
||||||
voting.Cut()
|
voting.Cut()
|
||||||
current_votes.Cut()
|
current_votes.Cut()
|
||||||
|
additional_text.Cut()
|
||||||
|
|
||||||
/* if(auto_muted && !ooc_allowed)
|
/* if(auto_muted && !ooc_allowed)
|
||||||
auto_muted = 0
|
auto_muted = 0
|
||||||
@@ -210,6 +212,13 @@ datum/controller/vote
|
|||||||
if(ticker.current_state >= 2)
|
if(ticker.current_state >= 2)
|
||||||
return 0
|
return 0
|
||||||
choices.Add(config.votable_modes)
|
choices.Add(config.votable_modes)
|
||||||
|
var/list/L = typesof(/datum/game_mode) - /datum/game_mode
|
||||||
|
for (var/F in choices)
|
||||||
|
for (var/T in L)
|
||||||
|
var/datum/game_mode/M = new T()
|
||||||
|
if (M.config_tag == F)
|
||||||
|
additional_text.Add("<td align = 'center'>[M.required_players]</td>")
|
||||||
|
break
|
||||||
if("crew_transfer")
|
if("crew_transfer")
|
||||||
if(check_rights(R_ADMIN|R_MOD, 0))
|
if(check_rights(R_ADMIN|R_MOD, 0))
|
||||||
question = "End the shift?"
|
question = "End the shift?"
|
||||||
@@ -290,16 +299,24 @@ datum/controller/vote
|
|||||||
if(mode)
|
if(mode)
|
||||||
if(question) . += "<h2>Vote: '[question]'</h2>"
|
if(question) . += "<h2>Vote: '[question]'</h2>"
|
||||||
else . += "<h2>Vote: [capitalize(mode)]</h2>"
|
else . += "<h2>Vote: [capitalize(mode)]</h2>"
|
||||||
. += "Time Left: [time_remaining] s<hr><ul>"
|
. += "Time Left: [time_remaining] s<hr>"
|
||||||
|
. += "<table width = '100%'><tr><td align = 'center'><b>Choices</b></td><td align = 'center'><b>Votes</b></td>"
|
||||||
|
if(capitalize(mode) == "Gamemode") .+= "<td align = 'center'><b>Minimum Players</b></td></b></tr>"
|
||||||
|
|
||||||
for(var/i = 1, i <= choices.len, i++)
|
for(var/i = 1, i <= choices.len, i++)
|
||||||
var/votes = choices[choices[i]]
|
var/votes = choices[choices[i]]
|
||||||
if(!votes) votes = 0
|
if(!votes) votes = 0
|
||||||
|
. += "<tr>"
|
||||||
if(current_votes[C.ckey] == i)
|
if(current_votes[C.ckey] == i)
|
||||||
. += "<li><b><a href='?src=\ref[src];vote=[i]'>[choices[i]] ([votes] votes)</a></b></li>"
|
. += "<td><b><a href='?src=\ref[src];vote=[i]'>[choices[i]]</a></b></td><td align = 'center'>[votes]</td>"
|
||||||
else
|
else
|
||||||
. += "<li><a href='?src=\ref[src];vote=[i]'>[choices[i]] ([votes] votes)</a></li>"
|
. += "<td><a href='?src=\ref[src];vote=[i]'>[choices[i]]</a></b></td><td align = 'center'>[votes]</td>"
|
||||||
|
|
||||||
. += "</ul><hr>"
|
if (additional_text.len >= i)
|
||||||
|
. += additional_text[i]
|
||||||
|
. += "</tr>"
|
||||||
|
|
||||||
|
. += "</table><hr>"
|
||||||
if(admin)
|
if(admin)
|
||||||
. += "(<a href='?src=\ref[src];vote=cancel'>Cancel Vote</a>) "
|
. += "(<a href='?src=\ref[src];vote=cancel'>Cancel Vote</a>) "
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -1368,8 +1368,6 @@ It is possible to destroy the net by the occupant or someone else.
|
|||||||
playsound(M.loc, 'sound/effects/sparks2.ogg', 50, 1)
|
playsound(M.loc, 'sound/effects/sparks2.ogg', 50, 1)
|
||||||
anim(M.loc,M,'icons/mob/mob.dmi',,"phasein",,M.dir)
|
anim(M.loc,M,'icons/mob/mob.dmi',,"phasein",,M.dir)
|
||||||
del(src)//Wait for everything to finish, delete the net. Else it will stop everything once net is deleted, including the spawn(0).
|
del(src)//Wait for everything to finish, delete the net. Else it will stop everything once net is deleted, including the spawn(0).
|
||||||
else
|
|
||||||
M.loc = null
|
|
||||||
|
|
||||||
M << "\red You appear in a strange place!"
|
M << "\red You appear in a strange place!"
|
||||||
|
|
||||||
|
|||||||
@@ -682,7 +682,7 @@ As such, it's hard-coded for now. No reason for it not to be, really.
|
|||||||
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjapulse
|
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjapulse
|
||||||
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjablade
|
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjablade
|
||||||
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjastar
|
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjastar
|
||||||
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjanet
|
//verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ninjanet
|
||||||
|
|
||||||
//=======//KAMIKAZE VERBS//=======//
|
//=======//KAMIKAZE VERBS//=======//
|
||||||
|
|
||||||
|
|||||||
@@ -73,7 +73,9 @@
|
|||||||
var/mob/M = new mobtype
|
var/mob/M = new mobtype
|
||||||
|
|
||||||
if(ishuman(M) || isbrain(M))
|
if(ishuman(M) || isbrain(M))
|
||||||
race = "Human"
|
var/mob/living/carbon/human/H = M
|
||||||
|
race = "[H.species.name]"
|
||||||
|
|
||||||
|
|
||||||
else if(ismonkey(M))
|
else if(ismonkey(M))
|
||||||
race = "Monkey"
|
race = "Monkey"
|
||||||
|
|||||||
@@ -97,40 +97,55 @@
|
|||||||
|
|
||||||
|
|
||||||
/obj/item/weapon/melee/baton/attack(mob/M, mob/user)
|
/obj/item/weapon/melee/baton/attack(mob/M, mob/user)
|
||||||
|
if(status && (CLUMSY in user.mutations) && prob(50))
|
||||||
|
user << "span class='danger'>You accidentally hit yourself with the [src]!</span>"
|
||||||
|
user.Weaken(30)
|
||||||
|
deductcharge(hitcost)
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
if(isrobot(M))
|
if(isrobot(M))
|
||||||
..()
|
..()
|
||||||
return
|
return
|
||||||
if(!isliving(M))
|
|
||||||
return
|
|
||||||
|
|
||||||
var/mob/living/L = M
|
var/mob/living/carbon/human/H = M
|
||||||
|
|
||||||
if(user.a_intent == "harm")
|
if(user.a_intent == "hurt")
|
||||||
..()
|
if(!..()) return
|
||||||
|
H.visible_message("<span class='danger'>[M] has been beaten with the [src] by [user]!</span>")
|
||||||
|
|
||||||
if(!status)
|
user.attack_log += "\[[time_stamp()]\]<font color='red'> Beat [H.name] ([H.ckey]) with [src.name]</font>"
|
||||||
L.visible_message("<span class='warning'>[L] has been prodded with [src] by [user]. Luckily it was off.</span>")
|
H.attack_log += "\[[time_stamp()]\]<font color='orange'> Beaten by [user.name] ([user.ckey]) with [src.name]</font>"
|
||||||
|
msg_admin_attack("[user.name] ([user.ckey]) beat [H.name] ([H.ckey]) with [src.name] (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
|
||||||
|
|
||||||
|
playsound(src.loc, "swing_hit", 50, 1, -1)
|
||||||
|
|
||||||
|
else if(!status)
|
||||||
|
H.visible_message("<span class='warning'>[H] has been prodded with [src] by [user]. Luckily it was off.</span>")
|
||||||
return
|
return
|
||||||
|
|
||||||
var/stunroll = (rand(1,100))
|
var/stunroll = (rand(1,100))
|
||||||
|
|
||||||
if(ishuman(L) && status)
|
if(status)
|
||||||
user.lastattacked = L
|
user.lastattacked = H
|
||||||
L.lastattacker = user
|
H.lastattacker = user
|
||||||
if(user == L) // Attacking yourself can't miss
|
if(user == H) // Attacking yourself can't miss
|
||||||
stunroll = 100
|
stunroll = 100
|
||||||
if(stunroll < 40)
|
if(stunroll < 40)
|
||||||
L.visible_message("\red <B>[user] misses [L] with \the [src]!")
|
H.visible_message("\red <B>[user] misses [H] with \the [src]!")
|
||||||
msg_admin_attack("[key_name(user)] attempted to stun [key_name(L)] with the [src].")
|
msg_admin_attack("[key_name(user)] attempted to stun [key_name(H)] with the [src].")
|
||||||
return
|
return
|
||||||
L.Stun(stunforce)
|
H.Stun(stunforce)
|
||||||
L.Weaken(stunforce)
|
H.Weaken(stunforce)
|
||||||
L.apply_effect(STUTTER, stunforce)
|
H.apply_effect(STUTTER, stunforce)
|
||||||
|
|
||||||
L.visible_message("<span class='danger'>[L] has been stunned with [src] by [user]!</span>")
|
H.visible_message("<span class='danger'>[H] has been stunned with [src] by [user]!</span>")
|
||||||
playsound(loc, 'sound/weapons/Egloves.ogg', 50, 1, -1)
|
playsound(loc, 'sound/weapons/Egloves.ogg', 50, 1, -1)
|
||||||
|
|
||||||
msg_admin_attack("[key_name(user)] stunned [key_name(L)] with the [src].")
|
msg_admin_attack("[key_name(user)] stunned [key_name(H)] with the [src].")
|
||||||
|
|
||||||
|
user.attack_log += "\[[time_stamp()]\]<font color='red'> Stunned [H.name] ([H.ckey]) with [src.name]</font>"
|
||||||
|
H.attack_log += "\[[time_stamp()]\]<font color='orange'> Stunned by [user.name] ([user.ckey]) with [src.name]</font>"
|
||||||
|
|
||||||
if(isrobot(loc))
|
if(isrobot(loc))
|
||||||
var/mob/living/silicon/robot/R = loc
|
var/mob/living/silicon/robot/R = loc
|
||||||
|
|||||||
@@ -1027,13 +1027,6 @@ datum/preferences
|
|||||||
if((!(lang.flags & RESTRICTED)) && (is_alien_whitelisted(user, L)||(!( lang.flags & WHITELISTED ))||(S && (L in S.secondary_langs))))
|
if((!(lang.flags & RESTRICTED)) && (is_alien_whitelisted(user, L)||(!( lang.flags & WHITELISTED ))||(S && (L in S.secondary_langs))))
|
||||||
new_languages += lang
|
new_languages += lang
|
||||||
|
|
||||||
//Apparently there's some PHP script that needs to be updated in order to give people whitelist languages.
|
|
||||||
//This workaround should be removed once that has been properly updated
|
|
||||||
if (lang.name == "Siik'maas")
|
|
||||||
new_languages |= all_languages["Siik'tajr"]
|
|
||||||
if (lang.name == "Siik'tajr")
|
|
||||||
new_languages |= all_languages["Siik'maas"]
|
|
||||||
|
|
||||||
languages_available = 1
|
languages_available = 1
|
||||||
|
|
||||||
if(!(languages_available))
|
if(!(languages_available))
|
||||||
@@ -1395,6 +1388,7 @@ datum/preferences
|
|||||||
|
|
||||||
|
|
||||||
character.skills = skills
|
character.skills = skills
|
||||||
|
character.used_skillpoints = used_skillpoints
|
||||||
|
|
||||||
// Destroy/cyborgize organs
|
// Destroy/cyborgize organs
|
||||||
|
|
||||||
|
|||||||
@@ -21,25 +21,13 @@
|
|||||||
flags = WHITELISTED
|
flags = WHITELISTED
|
||||||
|
|
||||||
/datum/language/tajaran
|
/datum/language/tajaran
|
||||||
name = "Siik'maas"
|
name = "Siik'tajr"
|
||||||
desc = "The traditionally employed tongue of Ahdomai, composed of expressive yowls and chirps. Native to the Tajaran."
|
desc = "The traditionally employed tongue of Ahdomai, composed of expressive yowls and chirps. Native to the Tajaran."
|
||||||
speech_verb = "mrowls"
|
speech_verb = "mrowls"
|
||||||
colour = "tajaran"
|
colour = "tajaran"
|
||||||
key = "j"
|
key = "j"
|
||||||
flags = WHITELISTED
|
flags = WHITELISTED
|
||||||
|
|
||||||
/datum/language/tajaran_sign
|
|
||||||
name = "Siik'tajr"
|
|
||||||
desc = "An expressive language that combines yowls and chirps with posture, tail and ears. Spoken by many Tajaran."
|
|
||||||
speech_verb = "mrowls"
|
|
||||||
colour = "tajaran_signlang"
|
|
||||||
key = "y" //only "dfpqxyz" left.
|
|
||||||
|
|
||||||
//need to find a way to resolve possesive macros
|
|
||||||
signlang_verb = list("flicks their left ear", "flicks their right ear", "swivels their ears", "twitches their tail", "curls the end of their tail", "arches their tail", "wiggles the end of their tail", "waves their tail about", "holds up a claw", "gestures with their left hand", "gestures with their right hand", "gestures with their tail", "gestures with their ears")
|
|
||||||
|
|
||||||
flags = WHITELISTED | NONVERBAL
|
|
||||||
|
|
||||||
/datum/language/skrell
|
/datum/language/skrell
|
||||||
name = "Skrellian"
|
name = "Skrellian"
|
||||||
desc = "A melodic and complex language spoken by the Skrell of Qerrbalak. Some of the notes are inaudible to humans."
|
desc = "A melodic and complex language spoken by the Skrell of Qerrbalak. Some of the notes are inaudible to humans."
|
||||||
|
|||||||
@@ -146,8 +146,7 @@
|
|||||||
name = "Tajaran"
|
name = "Tajaran"
|
||||||
icobase = 'icons/mob/human_races/r_tajaran.dmi'
|
icobase = 'icons/mob/human_races/r_tajaran.dmi'
|
||||||
deform = 'icons/mob/human_races/r_def_tajaran.dmi'
|
deform = 'icons/mob/human_races/r_def_tajaran.dmi'
|
||||||
language = "Siik'maas"
|
language = "Siik'tajr"
|
||||||
secondary_langs = list("Siik'tajr")
|
|
||||||
tail = "tajtail"
|
tail = "tajtail"
|
||||||
unarmed_type = /datum/unarmed_attack/claws
|
unarmed_type = /datum/unarmed_attack/claws
|
||||||
darksight = 8
|
darksight = 8
|
||||||
|
|||||||
@@ -394,16 +394,16 @@ Note that amputating the affected organ does in fact remove the infection from t
|
|||||||
|
|
||||||
if(germ_level >= INFECTION_LEVEL_ONE)
|
if(germ_level >= INFECTION_LEVEL_ONE)
|
||||||
//having an infection raises your body temperature
|
//having an infection raises your body temperature
|
||||||
var/fever_temperature = (owner.species.heat_level_1 - owner.species.body_temperature - 1)* min(germ_level/(INFECTION_LEVEL_ONE+300), 1) + owner.species.body_temperature
|
var/fever_temperature = (owner.species.heat_level_1 - owner.species.body_temperature - 1)* min(germ_level/INFECTION_LEVEL_TWO, 1) + owner.species.body_temperature
|
||||||
if (owner.bodytemperature < fever_temperature)
|
if (fever_temperature > owner.bodytemperature)
|
||||||
//world << "fever: [owner.bodytemperature] < [fever_temperature], raising temperature."
|
//need to make sure we raise temperature fast enough to get around environmental cooling preventing us from reaching fever_temperature
|
||||||
owner.bodytemperature++
|
owner.bodytemperature += (fever_temperature - T20C)/BODYTEMP_COLD_DIVISOR + 1
|
||||||
|
|
||||||
if(prob(round(germ_level/10)))
|
if(prob(round(germ_level/10)))
|
||||||
if (antibiotics < 5)
|
if (antibiotics < 5)
|
||||||
germ_level++
|
germ_level++
|
||||||
|
|
||||||
if (prob(5)) //adjust this to tweak how fast people take toxin damage from infections
|
if (prob(10)) //adjust this to tweak how fast people take toxin damage from infections
|
||||||
owner.adjustToxLoss(1)
|
owner.adjustToxLoss(1)
|
||||||
|
|
||||||
if(germ_level >= INFECTION_LEVEL_TWO && antibiotics < 5)
|
if(germ_level >= INFECTION_LEVEL_TWO && antibiotics < 5)
|
||||||
@@ -442,6 +442,7 @@ Note that amputating the affected organ does in fact remove the infection from t
|
|||||||
if (!(status & ORGAN_DEAD))
|
if (!(status & ORGAN_DEAD))
|
||||||
status |= ORGAN_DEAD
|
status |= ORGAN_DEAD
|
||||||
owner << "<span class='notice'>You can't feel your [display_name] anymore...</span>"
|
owner << "<span class='notice'>You can't feel your [display_name] anymore...</span>"
|
||||||
|
owner.update_body(1)
|
||||||
|
|
||||||
germ_level++
|
germ_level++
|
||||||
owner.adjustToxLoss(1)
|
owner.adjustToxLoss(1)
|
||||||
|
|||||||
@@ -30,6 +30,11 @@
|
|||||||
projectile_type = "/obj/item/projectile/beam/stun"
|
projectile_type = "/obj/item/projectile/beam/stun"
|
||||||
modifystate = "energystun"
|
modifystate = "energystun"
|
||||||
update_icon()
|
update_icon()
|
||||||
|
if(user.l_hand == src)
|
||||||
|
user.update_inv_l_hand()
|
||||||
|
else
|
||||||
|
user.update_inv_r_hand()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -250,42 +250,25 @@ client/var
|
|||||||
|
|
||||||
//These are called by the on-screen buttons, adjusting what the victim can and cannot do.
|
//These are called by the on-screen buttons, adjusting what the victim can and cannot do.
|
||||||
client/proc/add_gun_icons()
|
client/proc/add_gun_icons()
|
||||||
if (!usr.item_use_icon)
|
|
||||||
usr.item_use_icon = new /obj/screen/gun/item(null)
|
|
||||||
usr.item_use_icon.icon_state = "no_item[target_can_click]"
|
|
||||||
usr.item_use_icon.name = "[target_can_click ? "Disallow" : "Allow"] Item Use"
|
|
||||||
|
|
||||||
if (!usr.gun_move_icon)
|
|
||||||
usr.gun_move_icon = new /obj/screen/gun/move(null)
|
|
||||||
usr.gun_move_icon.icon_state = "no_walk[target_can_move]"
|
|
||||||
usr.gun_move_icon.name = "[target_can_move ? "Disallow" : "Allow"] Walking"
|
|
||||||
|
|
||||||
if (target_can_move && !usr.gun_run_icon)
|
|
||||||
usr.gun_run_icon = new /obj/screen/gun/run(null)
|
|
||||||
usr.gun_run_icon.icon_state = "no_run[target_can_run]"
|
|
||||||
usr.gun_run_icon.name = "[target_can_run ? "Disallow" : "Allow"] Running"
|
|
||||||
|
|
||||||
screen += usr.item_use_icon
|
screen += usr.item_use_icon
|
||||||
screen += usr.gun_move_icon
|
screen += usr.gun_move_icon
|
||||||
if (target_can_move)
|
if (target_can_move)
|
||||||
screen += usr.gun_run_icon
|
screen += usr.gun_run_icon
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
client/proc/remove_gun_icons()
|
client/proc/remove_gun_icons()
|
||||||
if(!usr) return 1 // Runtime prevention on N00k agents spawning with SMG
|
if(!usr) return 1 // Runtime prevention on N00k agents spawning with SMG
|
||||||
screen -= usr.item_use_icon
|
screen -= usr.item_use_icon
|
||||||
screen -= usr.gun_move_icon
|
screen -= usr.gun_move_icon
|
||||||
if (target_can_move)
|
if (target_can_move)
|
||||||
screen -= usr.gun_run_icon
|
screen -= usr.gun_run_icon
|
||||||
del usr.gun_move_icon
|
|
||||||
del usr.item_use_icon
|
|
||||||
del usr.gun_run_icon
|
|
||||||
|
|
||||||
client/verb/ToggleGunMode()
|
client/verb/ToggleGunMode()
|
||||||
set hidden = 1
|
set hidden = 1
|
||||||
gun_mode = !gun_mode
|
gun_mode = !gun_mode
|
||||||
if(gun_mode)
|
if(gun_mode)
|
||||||
usr << "You will now take people captive."
|
usr << "You will now take people captive."
|
||||||
add_gun_icons()
|
|
||||||
else
|
else
|
||||||
usr << "You will now shoot where you target."
|
usr << "You will now shoot where you target."
|
||||||
for(var/obj/item/weapon/gun/G in usr)
|
for(var/obj/item/weapon/gun/G in usr)
|
||||||
@@ -302,7 +285,7 @@ client/verb/AllowTargetMove()
|
|||||||
target_can_move = !target_can_move
|
target_can_move = !target_can_move
|
||||||
if(target_can_move)
|
if(target_can_move)
|
||||||
usr << "Target may now walk."
|
usr << "Target may now walk."
|
||||||
usr.gun_run_icon = new /obj/screen/gun/run(null) //adding icon for running permission
|
//usr.gun_run_icon = new /obj/screen/gun/run(null) //adding icon for running permission
|
||||||
screen += usr.gun_run_icon
|
screen += usr.gun_run_icon
|
||||||
else
|
else
|
||||||
usr << "Target may no longer move."
|
usr << "Target may no longer move."
|
||||||
|
|||||||
Reference in New Issue
Block a user