Bleeding edgy refresh (#303)

* not code stuff

* other things

* global vars, defines, helpers

* onclick hud stuff, orphans, world.dm

* controllers and datums

* game folder

* everything not client/mobs in modules

* client folder

* stage 1 mob stuff

* simple animal things

* silicons

* carbon things

* ayylmaos and monkeys

* hyoomahn

* icons n shit

* sprite fixes

* compile fixes

* some fixes I cherrypicked.

* qdel fixes

* forgot brain refractors
This commit is contained in:
Poojawa
2017-03-21 11:44:10 -05:00
committed by GitHub
parent 099a6c8764
commit f67e9f6d87
1476 changed files with 344416 additions and 40694 deletions
+44 -25
View File
@@ -20,7 +20,7 @@
return QDEL_HINT_HARDDEL
var/next_mob_id = 0
/mob/New()
/mob/Initialize()
tag = "mob_[next_mob_id++]"
mob_list += src
if(stat == DEAD)
@@ -54,7 +54,7 @@ var/next_mob_id = 0
if(gas[MOLES])
t+="<span class='notice'>[gas[GAS_META][META_GAS_NAME]]: [gas[MOLES]] \n</span>"
usr << t
to_chat(usr, t)
/mob/proc/show_message(msg, type, alt_msg, alt_type)//Message, type of message (1 or 2), alternative message, alt message type (1 or 2)
@@ -82,9 +82,9 @@ var/next_mob_id = 0
// voice muffling
if(stat == UNCONSCIOUS)
if(type & 2) //audio
src << "<I>... You can almost hear something ...</I>"
to_chat(src, "<I>... You can almost hear something ...</I>")
else
src << msg
to_chat(src, msg)
// Show a message to all player mobs who sees this atom
// Show a message to the src mob (if the src is a mob)
@@ -112,17 +112,19 @@ var/next_mob_id = 0
if(self_message)
msg = self_message
else
if(M.see_invisible<invisibility)//if src is invisible to us,
if(M.see_invisible<invisibility)//if src is invisible to us (and isn't a turf),
if(blind_message) // then people see blind message if there is one, otherwise nothing.
msg = blind_message
else
continue
else if(T.lighting_object)
if(T.lighting_object.invisibility <= M.see_invisible && !T.lighting_object.luminosity) //the light object is dark and not invisible to us
if(T.lighting_object.invisibility <= M.see_invisible && T.is_softly_lit()) //the light object is dark and not invisible to us
if(blind_message)
msg = blind_message
else
continue
M.show_message(msg,1,blind_message,2)
// Show a message to all mobs in earshot of this one
@@ -198,7 +200,7 @@ var/next_mob_id = 0
qdel(W)
else
if(!disable_warning)
src << "<span class='warning'>You are unable to equip that!</span>" //Only print if qdel_on_fail is false
to_chat(src, "<span class='warning'>You are unable to equip that!</span>" )
return 0
equip_to_slot(W, slot, redraw_mob) //This proc should not ever fail.
return 1
@@ -269,7 +271,7 @@ var/next_mob_id = 0
set category = "IC"
if(is_blind(src))
src << "<span class='notice'>Something is there but you can't see it.</span>"
to_chat(src, "<span class='notice'>Something is there but you can't see it.</span>")
return
face_atom(A)
@@ -410,7 +412,7 @@ var/next_mob_id = 0
if(mind)
mind.show_memory(src)
else
src << "You don't have a mind datum for some reason, so you can't look at your notes, if you had any."
to_chat(src, "You don't have a mind datum for some reason, so you can't look at your notes, if you had any.")
/mob/verb/add_memory(msg as message)
set name = "Add Note"
@@ -422,7 +424,7 @@ var/next_mob_id = 0
if(mind)
mind.store_memory(msg)
else
src << "You don't have a mind datum for some reason, so you can't add a note to it."
to_chat(src, "You don't have a mind datum for some reason, so you can't add a note to it.")
/mob/verb/abandon_mob()
set name = "Respawn"
@@ -431,12 +433,12 @@ var/next_mob_id = 0
if (!( abandon_allowed ))
return
if ((stat != 2 || !( ticker )))
usr << "<span class='boldnotice'>You must be dead to use this!</span>"
to_chat(usr, "<span class='boldnotice'>You must be dead to use this!</span>")
return
log_game("[usr.name]/[usr.key] used abandon mob.")
usr << "<span class='boldnotice'>Please roleplay correctly!</span>"
to_chat(usr, "<span class='boldnotice'>Please roleplay correctly!</span>")
if(!client)
log_game("[usr.key] AM failed due to disconnect.")
@@ -447,7 +449,7 @@ var/next_mob_id = 0
log_game("[usr.key] AM failed due to disconnect.")
return
var/mob/new_player/M = new /mob/new_player()
var/mob/dead/new_player/M = new /mob/dead/new_player()
if(!client)
log_game("[usr.key] AM failed due to disconnect.")
qdel(M)
@@ -465,10 +467,17 @@ var/next_mob_id = 0
reset_perspective(null)
unset_machine()
//suppress the .click macro so people can't use it to identify the location of items or aimbot
/mob/verb/ClickSubstitute()
set hidden = 1
//suppress the .click/dblclick macros so people can't use them to identify the location of items or aimbot
/mob/verb/DisClick(argu = null as anything, sec = "" as text, number1 = 0 as num , number2 = 0 as num)
set name = ".click"
set hidden = TRUE
set category = null
return
/mob/verb/DisDblClick(argu = null as anything, sec = "" as text, number1 = 0 as num , number2 = 0 as num)
set name = ".dblclick"
set hidden = TRUE
set category = null
return
/mob/Topic(href, href_list)
@@ -541,7 +550,7 @@ var/next_mob_id = 0
/mob/proc/see(message)
if(!is_active())
return 0
src << message
to_chat(src, message)
return 1
/mob/proc/show_viewers(message)
@@ -554,9 +563,10 @@ var/next_mob_id = 0
if(statpanel("Status"))
if (client)
stat(null, "Ping: [round(client.lastping, 1)]ms (Average: [round(client.avgping, 1)]ms)")
stat(null, "Map: [MAP_NAME]")
if(nextmap && istype(nextmap))
stat(null, "Next Map: [nextmap.friendlyname]")
stat(null, "Map: [SSmapping.config.map_name]")
var/datum/map_config/cached = SSmapping.next_map_config
if(cached)
stat(null, "Next Map: [cached.map_name]")
stat(null, "Server Time: [time2text(world.timeofday, "YYYY-MM-DD hh:mm:ss")]")
stat(null, "Station Time: [worldtime2text()]")
stat(null, "Time Dilation: [round(SStime_track.time_dilation_current,1)]% AVG:([round(SStime_track.time_dilation_avg_fast,1)]%, [round(SStime_track.time_dilation_avg,1)]%, [round(SStime_track.time_dilation_avg_slow,1)]%)")
@@ -583,7 +593,7 @@ var/next_mob_id = 0
stat("Failsafe Controller:", "ERROR")
if(Master)
stat(null)
for(var/datum/subsystem/SS in Master.subsystems)
for(var/datum/controller/subsystem/SS in Master.subsystems)
SS.stat_entry()
cameranet.stat_entry()
@@ -761,12 +771,21 @@ var/next_mob_id = 0
mob_spell_list += S
S.action.Grant(src)
/mob/proc/RemoveSpell(obj/effect/proc_holder/spell/spell)
if(!spell)
return
for(var/X in mob_spell_list)
var/obj/effect/proc_holder/spell/S = X
if(istype(S, spell))
mob_spell_list -= S
qdel(S)
//override to avoid rotating pixel_xy on mobs
/mob/shuttleRotate(rotation)
setDir(angle2dir(rotation+dir2angle(dir)))
//You can buckle on mobs if you're next to them since most are dense
/mob/buckle_mob(mob/living/M, force = 0)
/mob/buckle_mob(mob/living/M, force = FALSE, check_loc = TRUE)
if(M.buckled)
return 0
var/turf/T = get_turf(src)
@@ -974,6 +993,6 @@ var/next_mob_id = 0
/mob/vv_get_var(var_name)
switch(var_name)
if ("attack_log")
return debug_variable(var_name, attack_log, 0, src, FALSE)
. = ..()
if("logging")
return debug_variable(var_name, logging, 0, src, FALSE)
. = ..()