Merge pull request #15947 from SandPoot/bitfield-updates
Updates bitfields, admin side
This commit is contained in:
@@ -68,6 +68,25 @@ DEFINE_BITFIELD(area_flags, list(
|
||||
"NO_ALERTS" = NO_ALERTS,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(body_parts_covered, list(
|
||||
"ARM_LEFT" = ARM_LEFT,
|
||||
"ARM_RIGHT" = ARM_RIGHT,
|
||||
"ARMS" = ARMS,
|
||||
"CHEST" = CHEST,
|
||||
"FEET" = FEET,
|
||||
"FOOT_LEFT" = FOOT_LEFT,
|
||||
"FOOT_RIGHT" = FOOT_RIGHT,
|
||||
"GROIN" = GROIN,
|
||||
"HAND_LEFT" = HAND_LEFT,
|
||||
"HAND_RIGHT" = HAND_RIGHT,
|
||||
"HANDS" = HANDS,
|
||||
"HEAD" = HEAD,
|
||||
"LEG_LEFT" = LEG_LEFT,
|
||||
"LEG_RIGHT" = LEG_RIGHT,
|
||||
"LEGS" = LEGS,
|
||||
"NECK" = NECK,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(car_traits, list(
|
||||
"CAN_KIDNAP" = CAN_KIDNAP,
|
||||
))
|
||||
@@ -125,6 +144,11 @@ DEFINE_BITFIELD(disease_flags, list(
|
||||
"CURABLE" = CURABLE,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(explosion_flags, list(
|
||||
"EXPLOSION_FLAG_DENSITY_DEPENDENT" = EXPLOSION_FLAG_DENSITY_DEPENDENT,
|
||||
"EXPLOSION_FLAG_HARD_OBSTACLE" = EXPLOSION_FLAG_HARD_OBSTACLE,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(flags_1, list(
|
||||
"ADMIN_SPAWNED_1" = ADMIN_SPAWNED_1,
|
||||
"BLOCK_FACE_ATOM_1" = BLOCK_FACE_ATOM_1,
|
||||
@@ -147,6 +171,30 @@ DEFINE_BITFIELD(flags_1, list(
|
||||
"UNUSED_RESERVATION_TURF_1" = UNUSED_RESERVATION_TURF_1,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(flags_cover, list(
|
||||
"GLASSESCOVERSEYE" = GLASSESCOVERSEYES,
|
||||
"HEADCOVERSEYES" = HEADCOVERSEYES,
|
||||
"HEADCOVERSMOUTH" = HEADCOVERSMOUTH,
|
||||
"MASKCOVERSEYES" = MASKCOVERSEYES,
|
||||
"MASKCOVERSMOUTH" = MASKCOVERSMOUTH,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(flags_inv, list(
|
||||
"HIDEACCESSORY" = HIDEACCESSORY,
|
||||
"HIDEEARS" = HIDEEARS,
|
||||
"HIDEEYES" = HIDEEYES,
|
||||
"HIDEFACE" = HIDEFACE,
|
||||
"HIDEFACIALHAI" = HIDEFACIALHAIR,
|
||||
"HIDEGLOVES" = HIDEGLOVES,
|
||||
"HIDEHAIR" = HIDEHAIR,
|
||||
"HIDEJUMPSUIT" = HIDEJUMPSUIT,
|
||||
"HIDEMASK" = HIDEMASK,
|
||||
"HIDENECK" = HIDENECK,
|
||||
"HIDESHOES" = HIDESHOES,
|
||||
"HIDESNOUT" = HIDESNOUT,
|
||||
"HIDESUITSTORA" = HIDESUITSTORAGE,
|
||||
"HIDETAUR" = HIDETAUR,
|
||||
))
|
||||
DEFINE_BITFIELD(flags_ricochet, list(
|
||||
"RICOCHET_SHINY" = RICOCHET_SHINY,
|
||||
"RICOCHET_HARD" = RICOCHET_HARD
|
||||
@@ -204,6 +252,12 @@ DEFINE_BITFIELD(item_flags, list(
|
||||
"SLOWS_WHILE_IN_HAND" = SLOWS_WHILE_IN_HAND,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(material_flags, list(
|
||||
"MATERIAL_ADD_PREFIX" = MATERIAL_ADD_PREFIX,
|
||||
"MATERIAL_AFFECT_STATISTICS" = MATERIAL_AFFECT_STATISTICS,
|
||||
"MATERIAL_COLOR" = MATERIAL_COLOR,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(mob_biotypes, list(
|
||||
"MOB_BEAST" = MOB_BEAST,
|
||||
"MOB_BUG" = MOB_BUG,
|
||||
@@ -281,7 +335,21 @@ DEFINE_BITFIELD(pass_flags, list(
|
||||
"PASSCLOSEDTURF" = PASSCLOSEDTURF,
|
||||
"PASSGLASS" = PASSGLASS,
|
||||
"PASSGRILLE" = PASSGRILLE,
|
||||
"PASSMACHINE" = PASSMACHINE,
|
||||
"PASSMOB" = PASSMOB,
|
||||
"PASSSTRUCTURE" = PASSSTRUCTURE,
|
||||
"PASSTABLE" = PASSTABLE,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(pass_flags_self, list(
|
||||
"LETPASSTHROW" = LETPASSTHROW,
|
||||
"PASSBLOB" = PASSBLOB,
|
||||
"PASSCLOSEDTURF" = PASSCLOSEDTURF,
|
||||
"PASSGLASS" = PASSGLASS,
|
||||
"PASSGRILLE" = PASSGRILLE,
|
||||
"PASSMACHINE" = PASSMACHINE,
|
||||
"PASSMOB" = PASSMOB,
|
||||
"PASSSTRUCTURE" = PASSSTRUCTURE,
|
||||
"PASSTABLE" = PASSTABLE,
|
||||
))
|
||||
|
||||
@@ -343,6 +411,29 @@ DEFINE_BITFIELD(sight, list(
|
||||
"SEE_TURFS" = SEE_TURFS,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(slot_flags, list(
|
||||
"ITEM_SLOT_BACK" = ITEM_SLOT_BACK,
|
||||
"ITEM_SLOT_BACKPACK" = ITEM_SLOT_BACKPACK,
|
||||
"ITEM_SLOT_BELT" = ITEM_SLOT_BELT,
|
||||
"ITEM_SLOT_DEX_STORAGE" = ITEM_SLOT_DEX_STORAGE,
|
||||
"ITEM_SLOT_EARS" = ITEM_SLOT_EARS,
|
||||
"ITEM_SLOT_EYES" = ITEM_SLOT_EYES,
|
||||
"ITEM_SLOT_FEET" = ITEM_SLOT_FEET,
|
||||
"ITEM_SLOT_GLOVES" = ITEM_SLOT_GLOVES,
|
||||
"ITEM_SLOT_HANDCUFFED" = ITEM_SLOT_HANDCUFFED,
|
||||
"ITEM_SLOT_HANDS" = ITEM_SLOT_HANDS,
|
||||
"ITEM_SLOT_HEAD" = ITEM_SLOT_HEAD,
|
||||
"ITEM_SLOT_ICLOTHING" = ITEM_SLOT_ICLOTHING,
|
||||
"ITEM_SLOT_ID" = ITEM_SLOT_ID,
|
||||
"ITEM_SLOT_LEGCUFFED" = ITEM_SLOT_LEGCUFFED,
|
||||
"ITEM_SLOT_LPOCKET" = ITEM_SLOT_LPOCKET,
|
||||
"ITEM_SLOT_MASK" = ITEM_SLOT_MASK,
|
||||
"ITEM_SLOT_NECK" = ITEM_SLOT_NECK,
|
||||
"ITEM_SLOT_OCLOTHING" = ITEM_SLOT_OCLOTHING,
|
||||
"ITEM_SLOT_RPOCKET" = ITEM_SLOT_RPOCKET,
|
||||
"ITEM_SLOT_SUITSTORE" = ITEM_SLOT_SUITSTORE,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(smooth, list(
|
||||
"SMOOTH_BORDER" = SMOOTH_BORDER,
|
||||
"SMOOTH_DIAGONAL" = SMOOTH_DIAGONAL,
|
||||
@@ -351,6 +442,15 @@ DEFINE_BITFIELD(smooth, list(
|
||||
"SMOOTH_TRUE" = SMOOTH_TRUE,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(status_flags, list(
|
||||
"CANKNOCKDOWN" = CANKNOCKDOWN,
|
||||
"CANPUSH" = CANPUSH,
|
||||
"CANSTAGGER" = CANSTAGGER,
|
||||
"CANSTUN" = CANSTUN,
|
||||
"CANUNCONSCIOUS" = CANUNCONSCIOUS,
|
||||
"GODMODE" = GODMODE,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(storage_flags, list(
|
||||
"STORAGE_LIMIT_COMBINED_W_CLASS" = STORAGE_LIMIT_COMBINED_W_CLASS,
|
||||
"STORAGE_LIMIT_MAX_ITEMS" = STORAGE_LIMIT_MAX_ITEMS,
|
||||
@@ -369,6 +469,59 @@ DEFINE_BITFIELD(vis_flags, list(
|
||||
"VIS_UNDERLAY" = VIS_UNDERLAY,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(visor_flags, list(
|
||||
"ALLOWINTERNALS" = ALLOWINTERNALS,
|
||||
"BLOCK_GAS_SMOKE_EFFECT" = BLOCK_GAS_SMOKE_EFFECT,
|
||||
"IGNORE_HAT_TOSS" = IGNORE_HAT_TOSS,
|
||||
"LAVAPROTECT" = LAVAPROTECT,
|
||||
"NOSLIP" = NOSLIP,
|
||||
"NOSLIP_ICE" = NOSLIP_ICE,
|
||||
"SCAN_REAGENTS" = SCAN_REAGENTS,
|
||||
"STOPSPRESSUREDAMAGE" = STOPSPRESSUREDAMAGE,
|
||||
"THICKMATERIAL" = THICKMATERIAL,
|
||||
"VOICEBOX_DISABLED" = VOICEBOX_DISABLED,
|
||||
"VOICEBOX_TOGGLABLE" = VOICEBOX_TOGGLABLE,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(visor_flags_cover, list(
|
||||
"GLASSESCOVERSEYE" = GLASSESCOVERSEYES,
|
||||
"HEADCOVERSEYES" = HEADCOVERSEYES,
|
||||
"HEADCOVERSMOUTH" = HEADCOVERSMOUTH,
|
||||
"MASKCOVERSEYES" = MASKCOVERSEYES,
|
||||
"MASKCOVERSMOUTH" = MASKCOVERSMOUTH,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(visor_flags_inv, list(
|
||||
"HIDEACCESSORY" = HIDEACCESSORY,
|
||||
"HIDEEARS" = HIDEEARS,
|
||||
"HIDEEYES" = HIDEEYES,
|
||||
"HIDEFACE" = HIDEFACE,
|
||||
"HIDEFACIALHAI" = HIDEFACIALHAIR,
|
||||
"HIDEGLOVES" = HIDEGLOVES,
|
||||
"HIDEHAIR" = HIDEHAIR,
|
||||
"HIDEJUMPSUIT" = HIDEJUMPSUIT,
|
||||
"HIDEMASK" = HIDEMASK,
|
||||
"HIDENECK" = HIDENECK,
|
||||
"HIDESHOES" = HIDESHOES,
|
||||
"HIDESNOUT" = HIDESNOUT,
|
||||
"HIDESUITSTORA" = HIDESUITSTORAGE,
|
||||
"HIDETAUR" = HIDETAUR,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(vore_flags, list(
|
||||
"ABSORBABLE" = ABSORBABLE,
|
||||
"ABSORBED" = ABSORBED,
|
||||
"DEVOURABLE" = DEVOURABLE,
|
||||
"DIGESTABLE" = DIGESTABLE,
|
||||
"FEEDING" = FEEDING,
|
||||
"LICKABLE" = LICKABLE,
|
||||
"MOBVORE" = MOBVORE,
|
||||
"NO_VORE" = NO_VORE,
|
||||
"SMELLABLE" = SMELLABLE,
|
||||
"VOREPREF_INIT" = VOREPREF_INIT,
|
||||
"VORE_INIT" = VORE_INIT,
|
||||
))
|
||||
|
||||
DEFINE_BITFIELD(zap_flags, list(
|
||||
"ZAP_ALLOW_DUPLICATES" = ZAP_ALLOW_DUPLICATES,
|
||||
"ZAP_MACHINE_EXPLOSIVE" = ZAP_MACHINE_EXPLOSIVE,
|
||||
|
||||
@@ -360,6 +360,9 @@ GLOBAL_PROTECT(VVpixelmovement)
|
||||
|
||||
var/original_name = "[O]"
|
||||
|
||||
var/var_old_text
|
||||
var/var_new_text
|
||||
|
||||
switch(class)
|
||||
if(VV_LIST)
|
||||
if(!islist(var_value))
|
||||
@@ -376,14 +379,25 @@ GLOBAL_PROTECT(VVpixelmovement)
|
||||
for(var/V in varsvars)
|
||||
var_new = replacetext(var_new,"\[[V]]","[O.vars[V]]")
|
||||
|
||||
if(VV_BITFIELD)
|
||||
var/list/old_bitfields
|
||||
for(var/bitfield in GLOB.bitfields[variable])
|
||||
if(var_value & GLOB.bitfields[variable][bitfield])
|
||||
LAZYADD(old_bitfields, bitfield)
|
||||
var_old_text = "\n[var_value] = \n([english_list(old_bitfields, and_text = " | ", comma_text=" | ")])\n"
|
||||
var/list/new_bitfields
|
||||
for(var/bitfield in GLOB.bitfields[variable])
|
||||
if(var_new & GLOB.bitfields[variable][bitfield])
|
||||
LAZYADD(new_bitfields, bitfield)
|
||||
var_new_text = "\n[var_new] = \n([english_list(new_bitfields, and_text = " | ", comma_text=" | ")])"
|
||||
|
||||
if (O.vv_edit_var(variable, var_new) == FALSE)
|
||||
to_chat(src, "Your edit was rejected by the object.", confidential = TRUE)
|
||||
return
|
||||
vv_update_display(O, "varedited", VV_MSG_EDITED)
|
||||
log_world("### VarEdit by [key_name(src)]: [O.type] [variable]=[var_value] => [var_new]")
|
||||
log_admin("[key_name(src)] modified [original_name]'s [variable] from [html_encode("[var_value]")] to [html_encode("[var_new]")]")
|
||||
var/msg = "[key_name_admin(src)] modified [original_name]'s [variable] from [var_value] to [var_new]"
|
||||
log_world("### VarEdit by [key_name(src)]: [O.type] [variable]=[var_old_text ? var_old_text : var_value] => [var_new_text ? var_new_text : var_new]")
|
||||
log_admin("[key_name(src)] modified [original_name]'s [variable] from [html_encode("[var_old_text ? var_old_text : var_value]")] to [html_encode("[var_new_text ? var_new_text : var_new]")]")
|
||||
var/msg = "[key_name_admin(src)] modified [original_name]'s [variable] from [var_old_text ? var_old_text : var_value] to [var_new_text ? var_new_text : var_new]"
|
||||
message_admins(msg)
|
||||
admin_ticket_log(O, msg)
|
||||
return TRUE
|
||||
|
||||
Reference in New Issue
Block a user