Overhauls and 2/28 sync (#244)
* map tweaks/shuttle engines * helpers and defines * global/onclick * controllers and datums * mapping * game folder * some other stuff * some modules * modules that aren't mobs * some mob stuff * new player stuff * mob living * silicon stuff * simple animal things * carbon/ayylmao * update_icons * carbon/human * sounds and tools * icons and stuff * hippie grinder changes + tgui * kitchen.dmi * compile issues fixed * mapfix * Mapfixes 2.0 * mapedit2.0 * mapmerger pls * Revert "mapedit2.0" This reverts commit 74139a3cacea10df7aafca06c0a10bd3daf3a481. * clean up vore folder + 2 hotfixes * admin ticket refinement * Blob tweaks and LAZYADD * LAZYADD IS LAZY * Magic strings purged * DEFINES NEED HIGHER PRIORITIES * Only a sleepless idiot deals in absolute TRUE|FALSE * u h g * progress bar fix * reverts ticket logs * there's always that one guy * fixes and stuff * 2/27 fixes * game folder stuff * stats * some modules again * clothing stuff gets vg clothing out of the main files * everything not mobs again * mob stuff * maps, tgui, sql stuff * icons * additional fixes and compile errors * don't need this anymore * Oh right this isn't needed anymore * maint bar re-added * that doesn't need to be here * stupid events * wtfeven * probably makes Travis happy * don't care to fix the grinder atm * fixes vending sprites, changes turret * lethal, not lethals * overylays are finicky creatures * lazy fix for bleeding edgy (#252) * map tweaks/shuttle engines * helpers and defines * global/onclick * controllers and datums * mapping * game folder * some other stuff * some modules * modules that aren't mobs * some mob stuff * new player stuff * mob living * silicon stuff * simple animal things * carbon/ayylmao * update_icons * carbon/human * sounds and tools * icons and stuff * hippie grinder changes + tgui * kitchen.dmi * compile issues fixed * mapfix * Mapfixes 2.0 * mapedit2.0 * mapmerger pls * Revert "mapedit2.0" This reverts commit 74139a3cacea10df7aafca06c0a10bd3daf3a481. * clean up vore folder + 2 hotfixes * admin ticket refinement * Blob tweaks and LAZYADD * LAZYADD IS LAZY * Magic strings purged * DEFINES NEED HIGHER PRIORITIES * Only a sleepless idiot deals in absolute TRUE|FALSE * u h g * progress bar fix * reverts ticket logs * there's always that one guy * fixes and stuff * 2/27 fixes * game folder stuff * stats * some modules again * clothing stuff gets vg clothing out of the main files * everything not mobs again * mob stuff * maps, tgui, sql stuff * icons * additional fixes and compile errors * don't need this anymore * Oh right this isn't needed anymore * maint bar re-added * that doesn't need to be here * stupid events * wtfeven * probably makes Travis happy * don't care to fix the grinder atm * fixes vending sprites, changes turret * lethal, not lethals * overylays are finicky creatures
This commit is contained in:
+31
-7
@@ -27,8 +27,9 @@ var/next_mob_id = 0
|
||||
dead_mob_list += src
|
||||
else
|
||||
living_mob_list += src
|
||||
hook_vr("mob_new",list(src))
|
||||
prepare_huds()
|
||||
can_ride_typecache = typecacheof(can_ride_typecache)
|
||||
hook_vr("mob_new",list(src))
|
||||
..()
|
||||
|
||||
/atom/proc/prepare_huds()
|
||||
@@ -464,6 +465,12 @@ 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
|
||||
set name = ".click"
|
||||
return
|
||||
|
||||
/mob/Topic(href, href_list)
|
||||
if(href_list["mach_close"])
|
||||
var/t1 = text("window=[href_list["mach_close"]]")
|
||||
@@ -823,11 +830,28 @@ var/next_mob_id = 0
|
||||
/mob/proc/canUseTopic()
|
||||
return
|
||||
|
||||
/mob/proc/faction_check(mob/target)
|
||||
for(var/F in faction)
|
||||
if(F in target.faction)
|
||||
return 1
|
||||
return 0
|
||||
/mob/proc/faction_check_mob(mob/target, exact_match)
|
||||
if(exact_match) //if we need an exact match, we need to do some bullfuckery.
|
||||
var/list/faction_src = faction.Copy()
|
||||
var/list/faction_target = target.faction.Copy()
|
||||
if(!("\ref[src]" in faction_target)) //if they don't have our ref faction, remove it from our factions list.
|
||||
faction_src -= "\ref[src]" //if we don't do this, we'll never have an exact match.
|
||||
if(!("\ref[target]" in faction_src))
|
||||
faction_target -= "\ref[target]" //same thing here.
|
||||
return faction_check(faction_src, faction_target, TRUE)
|
||||
return faction_check(faction, target.faction, FALSE)
|
||||
|
||||
/proc/faction_check(list/faction_A, list/faction_B, exact_match)
|
||||
var/list/match_list
|
||||
if(exact_match)
|
||||
match_list = faction_A&faction_B //only items in both lists
|
||||
var/length = LAZYLEN(match_list)
|
||||
if(length)
|
||||
return (length == LAZYLEN(faction_A)) //if they're not the same len(gth) or we don't have a len, then this isn't an exact match.
|
||||
else
|
||||
match_list = faction_A&faction_B
|
||||
return LAZYLEN(match_list)
|
||||
return FALSE
|
||||
|
||||
|
||||
//This will update a mob's name, real_name, mind.name, data_core records, pda, id and traitor text
|
||||
@@ -952,4 +976,4 @@ var/next_mob_id = 0
|
||||
switch(var_name)
|
||||
if ("attack_log")
|
||||
return debug_variable(var_name, attack_log, 0, src, FALSE)
|
||||
. = ..()
|
||||
. = ..()
|
||||
|
||||
Reference in New Issue
Block a user