Merge branch 'master' into The-Clime-Offices

This commit is contained in:
SweetBlueSylveon
2021-02-04 21:37:06 -08:00
36 changed files with 2190 additions and 2128 deletions
+3 -5
View File
@@ -104,7 +104,6 @@ var/list/admin_verbs_admin = list(
/client/proc/toggle_attack_logs,
/datum/admins/proc/paralyze_mob,
/client/proc/fixatmos,
/datum/admins/proc/quick_nif, //VOREStation Add,
/datum/admins/proc/sendFax,
/client/proc/despawn_player,
/datum/admins/proc/view_feedback
@@ -139,7 +138,6 @@ var/list/admin_verbs_fun = list(
/datum/admins/proc/call_supply_drop,
/datum/admins/proc/call_drop_pod,
/client/proc/smite,
/client/proc/smite_vr, //VOREStation Add,
/client/proc/admin_lightning_strike,
)
@@ -150,7 +148,6 @@ var/list/admin_verbs_spawn = list(
/datum/admins/proc/spawn_plant,
/datum/admins/proc/spawn_atom, //allows us to spawn instances,
/client/proc/respawn_character,
/client/proc/spawn_character_mob, //VOREStation Add,
/client/proc/virus2_editor,
/client/proc/spawn_chemdisp_cartridge,
/client/proc/map_template_load,
@@ -181,6 +178,7 @@ var/list/admin_verbs_server = list(
/datum/admins/proc/toggle_space_ninja,
/client/proc/toggle_random_events,
/client/proc/check_customitem_activity,
/client/proc/nanomapgen_DumpImage,
/client/proc/modify_server_news,
/client/proc/recipe_dump,
/client/proc/panicbunker,
@@ -228,7 +226,7 @@ var/list/admin_verbs_debug = list(
/client/proc/toggle_debug_logs,
/client/proc/admin_ghost, //allows us to ghost/reenter body at will,
/datum/admins/proc/view_runtimes,
// /client/proc/show_gm_status, // VOREStation Edit - We don't use SSgame_master yet.
/client/proc/show_gm_status,
/datum/admins/proc/change_weather,
/datum/admins/proc/change_time,
/client/proc/admin_give_modifier,
@@ -403,7 +401,7 @@ var/list/admin_verbs_event_manager = list(
/client/proc/callproc,
/client/proc/callproc_datum,
/client/proc/debug_controller,
// /client/proc/show_gm_status, // VOREStation Edit - We don't use SSgame_master yet.
/client/proc/show_gm_status,
/datum/admins/proc/change_weather,
/datum/admins/proc/change_time,
/client/proc/admin_give_modifier,
+575
View File
@@ -0,0 +1,575 @@
//admin verb groups - They can overlap if you so wish. Only one of each verb will exist in the verbs list regardless
var/list/admin_verbs_default = list(
// /datum/admins/proc/show_player_panel, //shows an interface for individual players, with various links (links require additional flags, //VOREStation Remove,
// /client/proc/player_panel_new, //shows an interface for all players, with links to various panels, //VOREStation Remove,
// /client/proc/player_panel, //VOREStation Remove,
/client/proc/deadmin_self, //destroys our own admin datum so we can play as a regular player,
/client/proc/cmd_admin_say, //VOREStation Add,
/client/proc/cmd_mod_say, //VOREStation Add,
/client/proc/cmd_event_say, //VOREStation Add,
// /client/proc/hide_verbs, //hides all our adminverbs, //VOREStation Remove,
// /client/proc/hide_most_verbs, //hides all our hideable adminverbs, //VOREStation Remove,
// /client/proc/debug_variables, //allows us to -see- the variables of any instance in the game. +VAREDIT needed to modify, //VOREStation Remove,
// /client/proc/mark_datum_mapview, //VOREStation Remove,
// /client/proc/cmd_check_new_players, //allows us to see every new player, //VOREStation Remove,
// /client/proc/check_antagonists, //shows all antags,
// /client/proc/cmd_mod_say,
// /client/proc/deadchat //toggles deadchat on/off,
// /client/proc/toggle_ahelp_sound,
)
var/list/admin_verbs_admin = list(
/datum/admins/proc/set_tcrystals,
/datum/admins/proc/add_tcrystals,
/client/proc/invisimin, //allows our mob to go invisible/visible,
/datum/admins/proc/show_traitor_panel, //interface which shows a mob's mind.,
/datum/admins/proc/show_game_mode, //Configuration window for the current game mode.,
/datum/admins/proc/force_mode_latespawn, //Force the mode to try a latespawn proc,
/datum/admins/proc/force_antag_latespawn, //Force a specific template to try a latespawn proc,
/datum/admins/proc/toggleenter, //toggles whether people can join the current game,
/datum/admins/proc/toggleguests, //toggles whether guests can join the current game,
/datum/admins/proc/announce, //priority announce something to all clients.,
/datum/admins/proc/intercom, //send a fake intercom message, like an arrivals announcement,
/datum/admins/proc/intercom_convo, //send a fake intercom conversation, like an ATC exchange,
/client/proc/colorooc, //allows us to set a custom colour for everythign we say in ooc,
/client/proc/admin_ghost, //allows us to ghost/reenter body at will,
/datum/admins/proc/show_player_panel, //shows an interface for individual players, with various links (links require additional flags, //VOREStation Add,
/client/proc/player_panel_new, //shows an interface for all players, with links to various panels, //VOREStation Add,
/client/proc/player_panel, //VOREStation Add,
/client/proc/hide_verbs, //hides all our adminverbs, //VOREStation Add,
/client/proc/hide_most_verbs, //hides all our hideable adminverbs, //VOREStation Add,
/client/proc/debug_variables, //allows us to -see- the variables of any instance in the game. +VAREDIT needed to modify, //VOREStation Add,
/client/proc/mark_datum_mapview, //VOREStation Add,
/client/proc/cmd_check_new_players, //allows us to see every new player, //VOREStation Add,
/client/proc/toggle_view_range, //changes how far we can see,
/datum/admins/proc/view_txt_log, //shows the server log (diary) for today,
/datum/admins/proc/view_atk_log, //shows the server combat-log, doesn't do anything presently,
/client/proc/cmd_admin_pm_context, //right-click adminPM interface,
/client/proc/cmd_admin_pm_panel, //admin-pm list,
/client/proc/cmd_admin_subtle_message, //send an message to somebody as a 'voice in their head',
/client/proc/cmd_admin_delete, //delete an instance/object/mob/etc,
/client/proc/cmd_admin_check_contents, //displays the contents of an instance,
/client/proc/cmd_admin_check_player_logs, //checks a player's attack logs,
/client/proc/cmd_admin_check_dialogue_logs, //checks a player's dialogue logs,
/datum/admins/proc/access_news_network, //allows access of newscasters,
/client/proc/giveruntimelog, //allows us to give access to runtime logs to somebody,
/client/proc/getserverlog, //allows us to fetch server logs (diary) for other days,
/client/proc/jumptocoord, //we ghost and jump to a coordinate,
/client/proc/Getmob, //teleports a mob to our location,
/client/proc/Getkey, //teleports a mob with a certain ckey to our location,
// /client/proc/sendmob, //sends a mob somewhere, -Removed due to it needing two sorting procs to work, which were executed every time an admin right-clicked. ~Errorage,
/client/proc/Jump,
/client/proc/jumptokey, //allows us to jump to the location of a mob with a certain ckey,
/client/proc/jumptomob, //allows us to jump to a specific mob,
/client/proc/jumptoturf, //allows us to jump to a specific turf,
/client/proc/admin_call_shuttle, //allows us to call the emergency shuttle,
/client/proc/admin_cancel_shuttle, //allows us to cancel the emergency shuttle, sending it back to CentCom,
/client/proc/cmd_admin_direct_narrate, //send text directly to a player with no padding. Useful for narratives and fluff-text,
/client/proc/cmd_admin_world_narrate, //sends text to all players with no padding,
/client/proc/cmd_admin_z_narrate, //VOREStation Add,
/client/proc/cmd_admin_create_centcom_report,
/client/proc/check_words, //displays cult-words,
/client/proc/check_ai_laws, //shows AI and borg laws,
/client/proc/rename_silicon, //properly renames silicons,
/client/proc/manage_silicon_laws, // Allows viewing and editing silicon laws. ,
/client/proc/check_antagonists,
/client/proc/admin_memo, //admin memo system. show/delete/write. +SERVER needed to delete admin memos of others,
/client/proc/dsay, //talk in deadchat using our ckey/fakekey,
// /client/proc/toggle_hear_deadcast, //toggles whether we hear deadchat,
/client/proc/investigate_show, //various admintools for investigation. Such as a singulo grief-log,
/client/proc/secrets,
/datum/admins/proc/toggleooc, //toggles ooc on/off for everyone,
/datum/admins/proc/togglelooc, //toggles looc on/off for everyone,
/datum/admins/proc/toggleoocdead, //toggles ooc on/off for everyone who is dead,
/datum/admins/proc/togglehubvisibility, //toggles visibility on the BYOND Hub.,
/datum/admins/proc/toggledsay, //toggles dsay on/off for everyone,
/client/proc/game_panel, //game panel, allows to change game-mode etc,
/client/proc/cmd_admin_say, //admin-only ooc chat,
/client/proc/cmd_mod_say,
/client/proc/cmd_event_say,
/datum/admins/proc/PlayerNotes,
/datum/admins/proc/show_player_info,
/client/proc/free_slot, //frees slot for chosen job,
/client/proc/cmd_admin_change_custom_event,
/client/proc/cmd_admin_rejuvenate,
/client/proc/toggleghostwriters,
/client/proc/toggledrones,
/datum/admins/proc/show_skills,
/client/proc/check_customitem_activity,
/client/proc/man_up,
/client/proc/global_man_up,
/client/proc/response_team, // Response Teams admin verb,
/client/proc/trader_ship, // Trader ship admin verb,
/client/proc/toggle_antagHUD_use,
/client/proc/toggle_antagHUD_restrictions,
/client/proc/allow_character_respawn, // Allows a ghost to respawn ,
/client/proc/event_manager_panel,
/client/proc/empty_ai_core_toggle_latejoin,
/client/proc/empty_ai_core_toggle_latejoin,
/client/proc/aooc,
/client/proc/change_human_appearance_admin, // Allows an admin to change the basic appearance of human-based mobs ,
/client/proc/change_human_appearance_self, // Allows the human-based mob itself change its basic appearance ,
/client/proc/change_security_level,
/client/proc/view_chemical_reaction_logs,
/client/proc/makePAI,
/client/proc/toggle_debug_logs,
/client/proc/toggle_attack_logs,
/datum/admins/proc/paralyze_mob,
/client/proc/fixatmos,
/datum/admins/proc/quick_nif, //VOREStation Add,
/datum/admins/proc/set_uplink, //VOREStation Add,
/datum/admins/proc/sendFax,
/client/proc/despawn_player,
/datum/admins/proc/view_feedback
)
var/list/admin_verbs_ban = list(
/client/proc/unban_panel,
/client/proc/jobbans
)
var/list/admin_verbs_sounds = list(
/client/proc/play_local_sound,
/client/proc/play_sound,
/client/proc/play_server_sound
)
var/list/admin_verbs_fun = list(
/client/proc/object_talk,
/datum/admins/proc/cmd_admin_dress,
/client/proc/cmd_admin_gib_self,
/client/proc/drop_bomb,
/client/proc/everyone_random,
/client/proc/cinematic,
/datum/admins/proc/toggle_aliens,
/datum/admins/proc/toggle_space_ninja,
/client/proc/cmd_admin_add_freeform_ai_law,
/client/proc/cmd_admin_add_random_ai_law,
/client/proc/make_sound,
/client/proc/toggle_random_events,
/client/proc/editappear,
/client/proc/roll_dices,
/datum/admins/proc/call_supply_drop,
/datum/admins/proc/call_drop_pod,
/client/proc/smite,
/client/proc/smite_vr, //VOREStation Add,
/client/proc/admin_lightning_strike,
)
var/list/admin_verbs_spawn = list(
/datum/admins/proc/spawn_fruit,
/datum/admins/proc/spawn_custom_item,
/datum/admins/proc/check_custom_items,
/datum/admins/proc/spawn_plant,
/datum/admins/proc/spawn_atom, //allows us to spawn instances,
/client/proc/respawn_character,
/client/proc/spawn_character_mob, //VOREStation Add,
/client/proc/virus2_editor,
/client/proc/spawn_chemdisp_cartridge,
/client/proc/map_template_load,
/client/proc/map_template_upload,
/client/proc/map_template_load_on_new_z
)
var/list/admin_verbs_server = list(
/datum/admins/proc/capture_map,
/client/proc/Set_Holiday,
/client/proc/ToRban,
/datum/admins/proc/startnow,
/datum/admins/proc/restart,
/datum/admins/proc/delay,
/datum/admins/proc/toggleaban,
/datum/admins/proc/togglepersistence,
/client/proc/cmd_mod_say,
/client/proc/toggle_log_hrefs,
/datum/admins/proc/immreboot,
/client/proc/everyone_random,
/datum/admins/proc/toggleAI,
/client/proc/cmd_admin_delete, //delete an instance/object/mob/etc,
/client/proc/cmd_debug_del_all,
/datum/admins/proc/adrev,
/datum/admins/proc/adspawn,
/datum/admins/proc/adjump,
/datum/admins/proc/toggle_aliens,
/datum/admins/proc/toggle_space_ninja,
/client/proc/toggle_random_events,
/client/proc/check_customitem_activity,
/client/proc/modify_server_news,
/client/proc/recipe_dump,
/client/proc/panicbunker,
/client/proc/paranoia_logging,
/client/proc/ip_reputation
)
var/list/admin_verbs_debug = list(
/client/proc/getruntimelog, //allows us to access runtime logs to somebody,
/client/proc/cmd_admin_list_open_jobs,
/client/proc/Debug2,
/client/proc/kill_air,
/client/proc/ZASSettings,
/client/proc/cmd_debug_make_powernets,
/client/proc/kill_airgroup,
/client/proc/debug_controller,
/client/proc/debug_antagonist_template,
/client/proc/cmd_debug_mob_lists,
/client/proc/cmd_debug_using_map,
/client/proc/cmd_admin_delete,
/client/proc/cmd_debug_del_all,
/client/proc/cmd_debug_tog_aliens,
/client/proc/cmd_display_del_log,
/client/proc/cmd_display_init_log,
/client/proc/cmd_display_overlay_log,
/client/proc/air_report,
/client/proc/reload_admins,
/client/proc/reload_eventMs,
/client/proc/restart_controller,
/datum/admins/proc/restart,
/client/proc/print_random_map,
/client/proc/create_random_map,
/client/proc/apply_random_map,
/client/proc/overlay_random_map,
/client/proc/delete_random_map,
/client/proc/show_plant_genes,
/client/proc/enable_debug_verbs,
/client/proc/callproc,
/client/proc/callproc_datum,
/client/proc/SDQL2_query,
/client/proc/Jump,
/client/proc/jumptomob,
/client/proc/jumptocoord,
/client/proc/dsay,
/client/proc/toggle_debug_logs,
/client/proc/admin_ghost, //allows us to ghost/reenter body at will,
/datum/admins/proc/show_player_panel, //shows an interface for individual players, with various links (links require additional flags, //VOREStation Add,
/client/proc/player_panel_new, //shows an interface for all players, with links to various panels, //VOREStation Add,
/client/proc/player_panel, //VOREStation Add,
/client/proc/hide_verbs, //hides all our adminverbs, //VOREStation Add,
/client/proc/hide_most_verbs, //hides all our hideable adminverbs, //VOREStation Add,
/client/proc/debug_variables, //allows us to -see- the variables of any instance in the game. +VAREDIT needed to modify, //VOREStation Add,
/client/proc/mark_datum_mapview, //VOREStation Add,
/client/proc/cmd_check_new_players, //allows us to see every new player, //VOREStation Add,
/datum/admins/proc/view_runtimes,
// /client/proc/show_gm_status, // VOREStation Edit - We don't use SSgame_master yet.
/datum/admins/proc/set_uplink, //VOREStation Add,
/datum/admins/proc/change_weather,
/datum/admins/proc/change_time,
/client/proc/admin_give_modifier,
/client/proc/simple_DPS,
/datum/admins/proc/view_feedback
)
var/list/admin_verbs_paranoid_debug = list(
/client/proc/callproc,
/client/proc/callproc_datum,
/client/proc/debug_controller
)
var/list/admin_verbs_possess = list(
/proc/possess,
/proc/release
)
var/list/admin_verbs_permissions = list(
/client/proc/edit_admin_permissions
)
var/list/admin_verbs_rejuv = list(
/client/proc/respawn_character
)
//verbs which can be hidden - needs work
var/list/admin_verbs_hideable = list(
/client/proc/deadmin_self,
// /client/proc/deadchat,
/datum/admins/proc/show_traitor_panel,
/datum/admins/proc/toggleenter,
/datum/admins/proc/toggleguests,
/datum/admins/proc/announce,
/client/proc/colorooc,
/client/proc/admin_ghost,
/client/proc/toggle_view_range,
/datum/admins/proc/view_txt_log,
/datum/admins/proc/view_atk_log,
/client/proc/cmd_admin_subtle_message,
/client/proc/cmd_admin_check_contents,
/client/proc/cmd_admin_check_player_logs,
/client/proc/cmd_admin_check_dialogue_logs,
/datum/admins/proc/access_news_network,
/client/proc/admin_call_shuttle,
/client/proc/admin_cancel_shuttle,
/client/proc/cmd_admin_direct_narrate,
/client/proc/cmd_admin_world_narrate,
/client/proc/cmd_admin_z_narrate, //VOREStation Add,
/client/proc/check_words,
/client/proc/play_local_sound,
/client/proc/play_sound,
/client/proc/play_server_sound,
/client/proc/object_talk,
/datum/admins/proc/cmd_admin_dress,
/client/proc/cmd_admin_gib_self,
/client/proc/drop_bomb,
/client/proc/cinematic,
/datum/admins/proc/toggle_aliens,
/datum/admins/proc/toggle_space_ninja,
/client/proc/cmd_admin_add_freeform_ai_law,
/client/proc/cmd_admin_add_random_ai_law,
/client/proc/cmd_admin_create_centcom_report,
/client/proc/make_sound,
/client/proc/toggle_random_events,
/client/proc/cmd_admin_add_random_ai_law,
/client/proc/Set_Holiday,
/client/proc/ToRban,
/datum/admins/proc/startnow,
/datum/admins/proc/restart,
/datum/admins/proc/delay,
/datum/admins/proc/toggleaban,
/client/proc/toggle_log_hrefs,
/datum/admins/proc/immreboot,
/client/proc/everyone_random,
/datum/admins/proc/toggleAI,
/datum/admins/proc/adrev,
/datum/admins/proc/adspawn,
/datum/admins/proc/adjump,
/client/proc/restart_controller,
/client/proc/cmd_admin_list_open_jobs,
/client/proc/callproc,
/client/proc/callproc_datum,
/client/proc/Debug2,
/client/proc/reload_admins,
/client/proc/kill_air,
/client/proc/cmd_debug_make_powernets,
/client/proc/kill_airgroup,
/client/proc/debug_controller,
/client/proc/startSinglo,
/client/proc/simple_DPS,
/client/proc/cmd_debug_mob_lists,
/client/proc/cmd_debug_using_map,
/client/proc/cmd_debug_del_all,
/client/proc/cmd_debug_tog_aliens,
/client/proc/cmd_display_del_log,
/client/proc/air_report,
/client/proc/enable_debug_verbs,
/client/proc/roll_dices,
/proc/possess,
/proc/release,
/datum/admins/proc/set_uplink, //VOREStation Add,
/datum/admins/proc/set_tcrystals
)
var/list/admin_verbs_mod = list(
/client/proc/cmd_admin_pm_context, //right-click adminPM interface,
/client/proc/cmd_admin_pm_panel, //admin-pm list,
/client/proc/debug_variables, //allows us to -see- the variables of any instance in the game.,
/datum/admins/proc/PlayerNotes,
/client/proc/admin_ghost, //allows us to ghost/reenter body at will,
/datum/admins/proc/show_player_panel, //shows an interface for individual players, with various links (links require additional flags, //VOREStation Add,
/client/proc/player_panel_new, //shows an interface for all players, with links to various panels, //VOREStation Add,
/client/proc/player_panel, //VOREStation Add,
/client/proc/hide_verbs, //hides all our adminverbs, //VOREStation Add,
/client/proc/hide_most_verbs, //hides all our hideable adminverbs, //VOREStation Add,
/client/proc/debug_variables, //allows us to -see- the variables of any instance in the game. +VAREDIT needed to modify, //VOREStation Add,
/client/proc/mark_datum_mapview, //VOREStation Add,
/client/proc/cmd_check_new_players, //allows us to see every new player, //VOREStation Add,
/client/proc/cmd_mod_say,
/client/proc/cmd_event_say,
/datum/admins/proc/show_player_info,
/datum/admins/proc/show_traitor_panel,
/client/proc/colorooc,
/client/proc/player_panel_new,
/client/proc/dsay,
/datum/admins/proc/show_skills,
/datum/admins/proc/show_player_panel,
/client/proc/check_antagonists,
/client/proc/aooc,
/client/proc/jobbans,
/client/proc/toggle_attack_logs,
/client/proc/cmd_admin_subtle_message, //send an message to somebody as a 'voice in their head',
/datum/admins/proc/paralyze_mob,
/client/proc/cmd_admin_direct_narrate,
/client/proc/cmd_admin_z_narrate, //VOREStation Add,
/client/proc/allow_character_respawn, // Allows a ghost to respawn ,
/datum/admins/proc/sendFax,
/client/proc/getserverlog, //allows us to fetch server logs (diary) for other days,
/datum/admins/proc/view_persistent_data,
/datum/admins/proc/view_txt_log, //shows the server log (diary) for today,
/datum/admins/proc/view_atk_log //shows the server combat-log, doesn't do anything presently,
)
var/list/admin_verbs_event_manager = list(
/client/proc/cmd_event_say,
/client/proc/cmd_admin_pm_context,
/client/proc/cmd_admin_pm_panel,
/client/proc/admin_ghost,
/datum/admins/proc/show_player_panel, //shows an interface for individual players, with various links (links require additional flags, //VOREStation Add,
/client/proc/player_panel_new, //shows an interface for all players, with links to various panels, //VOREStation Add,
/client/proc/player_panel, //VOREStation Add,
/client/proc/hide_verbs, //hides all our adminverbs, //VOREStation Add,
/client/proc/hide_most_verbs, //hides all our hideable adminverbs, //VOREStation Add,
/client/proc/debug_variables, //allows us to -see- the variables of any instance in the game. +VAREDIT needed to modify, //VOREStation Add,
/client/proc/mark_datum_mapview, //VOREStation Add,
/client/proc/cmd_check_new_players, //allows us to see every new player, //VOREStation Add,
/datum/admins/proc/show_player_info,
/client/proc/dsay,
/client/proc/cmd_admin_subtle_message,
/client/proc/debug_variables,
/client/proc/check_antagonists,
/client/proc/aooc,
/datum/admins/proc/paralyze_mob,
/client/proc/cmd_admin_direct_narrate,
/client/proc/cmd_admin_z_narrate, //VOREStation Add,
/client/proc/allow_character_respawn,
/datum/admins/proc/sendFax,
/client/proc/respawn_character,
/proc/possess,
/proc/release,
/datum/admins/proc/change_weather,
/datum/admins/proc/change_time,
/client/proc/admin_give_modifier,
/client/proc/Jump,
/client/proc/jumptomob,
/client/proc/jumptocoord,
/client/proc/cmd_admin_delete,
/datum/admins/proc/delay,
/client/proc/Set_Holiday,
/client/proc/make_sound,
/client/proc/toggle_random_events,
/datum/admins/proc/cmd_admin_dress,
/client/proc/cmd_admin_gib_self,
/client/proc/drop_bomb,
/client/proc/cmd_admin_add_freeform_ai_law,
/client/proc/cmd_admin_add_random_ai_law,
/client/proc/make_sound,
/client/proc/toggle_random_events,
/client/proc/editappear,
/client/proc/roll_dices,
/datum/admins/proc/call_supply_drop,
/datum/admins/proc/call_drop_pod,
/datum/admins/proc/PlayerNotes,
/client/proc/callproc,
/client/proc/callproc_datum,
/client/proc/debug_controller,
// /client/proc/show_gm_status, // VOREStation Edit - We don't use SSgame_master yet.
/datum/admins/proc/change_weather,
/datum/admins/proc/change_time,
/client/proc/admin_give_modifier,
/datum/admins/proc/cmd_admin_dress,
/client/proc/cmd_admin_gib_self,
/datum/admins/proc/set_tcrystals,
/datum/admins/proc/add_tcrystals,
/client/proc/invisimin, //allows our mob to go invisible/visible,
/datum/admins/proc/show_traitor_panel, //interface which shows a mob's mind.,
/datum/admins/proc/show_game_mode, //Configuration window for the current game mode.,
/datum/admins/proc/force_mode_latespawn, //Force the mode to try a latespawn proc,
/datum/admins/proc/force_antag_latespawn, //Force a specific template to try a latespawn proc,
/datum/admins/proc/announce, //priority announce something to all clients.,
/datum/admins/proc/intercom, //send a fake intercom message, like an arrivals announcement,
/datum/admins/proc/intercom_convo, //send a fake intercom conversation, like an ATC exchange,
/client/proc/colorooc, //allows us to set a custom colour for everythign we say in ooc,
/client/proc/admin_ghost, //allows us to ghost/reenter body at will,
/client/proc/toggle_view_range, //changes how far we can see,
/client/proc/cmd_admin_pm_context, //right-click adminPM interface,
/client/proc/cmd_admin_pm_panel, //admin-pm list,
/client/proc/cmd_admin_subtle_message, //send an message to somebody as a 'voice in their head',
/client/proc/cmd_admin_delete, //delete an instance/object/mob/etc,
/client/proc/cmd_admin_check_contents, //displays the contents of an instance,
/client/proc/cmd_admin_check_player_logs, //checks a player's attack logs,
/client/proc/cmd_admin_check_dialogue_logs, //checks a player's dialogue logs,
/datum/admins/proc/access_news_network, //allows access of newscasters,
/client/proc/jumptocoord, //we ghost and jump to a coordinate,
/client/proc/Getmob, //teleports a mob to our location,
/client/proc/Getkey, //teleports a mob with a certain ckey to our location,
/client/proc/Jump,
/client/proc/jumptokey, //allows us to jump to the location of a mob with a certain ckey,
/client/proc/jumptomob, //allows us to jump to a specific mob,
/client/proc/jumptoturf, //allows us to jump to a specific turf,
/client/proc/admin_call_shuttle, //allows us to call the emergency shuttle,
/client/proc/admin_cancel_shuttle, //allows us to cancel the emergency shuttle, sending it back to CentCom,
/client/proc/cmd_admin_direct_narrate, //send text directly to a player with no padding. Useful for narratives and fluff-text,
/client/proc/cmd_admin_world_narrate, //sends text to all players with no padding,
/client/proc/cmd_admin_z_narrate, //VOREStation Add,
/client/proc/cmd_admin_create_centcom_report,
/client/proc/check_words, //displays cult-words,
/client/proc/check_ai_laws, //shows AI and borg laws,
/client/proc/rename_silicon, //properly renames silicons,
/client/proc/manage_silicon_laws, // Allows viewing and editing silicon laws. ,
/client/proc/check_antagonists,
/client/proc/admin_memo, //admin memo system. show/delete/write. +SERVER needed to delete admin memos of others,
/client/proc/dsay, //talk in deadchat using our ckey/fakekey,
/client/proc/secrets,
/client/proc/game_panel, //game panel, allows to change game-mode etc,
/client/proc/cmd_mod_say,
/client/proc/cmd_event_say,
/datum/admins/proc/show_player_info,
/client/proc/free_slot, //frees slot for chosen job,
/client/proc/cmd_admin_change_custom_event,
/client/proc/cmd_admin_rejuvenate,
/client/proc/toggleghostwriters,
/datum/admins/proc/show_skills,
/client/proc/man_up,
/client/proc/global_man_up,
/client/proc/response_team, // Response Teams admin verb,
/client/proc/trader_ship, // Trader ship admin verb,
/client/proc/allow_character_respawn, // Allows a ghost to respawn ,
/client/proc/event_manager_panel,
/client/proc/aooc,
/client/proc/change_human_appearance_admin, // Allows an admin to change the basic appearance of human-based mobs ,
/client/proc/change_human_appearance_self, // Allows the human-based mob itself change its basic appearance ,
/client/proc/change_security_level,
/client/proc/makePAI,
/client/proc/toggle_debug_logs,
/client/proc/toggle_attack_logs,
/datum/admins/proc/paralyze_mob,
/client/proc/fixatmos,
/datum/admins/proc/sendFax,
/client/proc/despawn_player,
/datum/admins/proc/view_feedback,
/datum/admins/proc/capture_map,
/client/proc/Set_Holiday,
/datum/admins/proc/startnow,
/datum/admins/proc/restart,
/datum/admins/proc/delay,
/client/proc/cmd_mod_say,
/datum/admins/proc/immreboot,
/client/proc/everyone_random,
/client/proc/cmd_admin_delete, //delete an instance/object/mob/etc,
/client/proc/cmd_debug_del_all,
/client/proc/toggle_random_events,
/client/proc/modify_server_news
)
/client/proc/add_admin_verbs()
if(holder)
verbs += admin_verbs_default
if(holder.rights & R_BUILDMODE) verbs += /client/proc/togglebuildmodeself
if(holder.rights & R_ADMIN) verbs += admin_verbs_admin
if(holder.rights & R_BAN) verbs += admin_verbs_ban
if(holder.rights & R_FUN) verbs += admin_verbs_fun
if(holder.rights & R_SERVER) verbs += admin_verbs_server
if(holder.rights & R_DEBUG)
verbs += admin_verbs_debug
if(config.debugparanoid && !(holder.rights & R_ADMIN))
verbs.Remove(admin_verbs_paranoid_debug) //Right now it's just callproc but we can easily add others later on.
if(holder.rights & R_POSSESS) verbs += admin_verbs_possess
if(holder.rights & R_PERMISSIONS) verbs += admin_verbs_permissions
if(holder.rights & R_STEALTH) verbs += /client/proc/stealth
if(holder.rights & R_REJUVINATE) verbs += admin_verbs_rejuv
if(holder.rights & R_SOUNDS) verbs += admin_verbs_sounds
if(holder.rights & R_SPAWN) verbs += admin_verbs_spawn
if(holder.rights & R_MOD) verbs += admin_verbs_mod
if(holder.rights & R_EVENT) verbs += admin_verbs_event_manager
/client/proc/remove_admin_verbs()
verbs.Remove(
admin_verbs_default,
/client/proc/togglebuildmodeself,
admin_verbs_admin,
admin_verbs_ban,
admin_verbs_fun,
admin_verbs_server,
admin_verbs_debug,
admin_verbs_possess,
admin_verbs_permissions,
/client/proc/stealth,
admin_verbs_rejuv,
admin_verbs_sounds,
admin_verbs_spawn,
debug_verbs
)
+12
View File
@@ -0,0 +1,12 @@
/datum/admins/proc/set_uplink(mob/living/carbon/human/H as mob)
set category = "Debug"
set name = "Set Uplink"
set desc = "Allows admins to set up an uplink on a character. This will be required for a character to use telecrystals."
set popup_menu = FALSE
if(check_rights(R_ADMIN|R_DEBUG))
traitors.spawn_uplink(H)
H.mind.tcrystals = DEFAULT_TELECRYSTAL_AMOUNT
H.mind.accept_tcrystals = 1
else
to_chat(usr, "You do not have access to this command.")
+4 -4
View File
@@ -11,9 +11,9 @@
log_adminsay(msg,src)
//VOREStation Edit Start - Adds R_EVENT
//VOREStation Edit Start - Adds R_STEALTH
for(var/client/C in GLOB.admins)
if(check_rights(R_ADMIN|R_EVENT))
if(check_rights(R_ADMIN|R_STEALTH))
to_chat(C, "<span class='admin_channel'>" + create_text_tag("admin", "ADMIN:", C) + " <span class='name'>[key_name(usr, 1)]</span>([admin_jump_link(mob, src)]): <span class='message'>[msg]</span></span>")
//VOREStation Edit End
@@ -24,7 +24,7 @@
set name = "Msay"
set hidden = 1
if(!check_rights(R_ADMIN|R_MOD|R_SERVER|R_EVENT)) //VOREStation Edit
if(!check_rights(R_ADMIN|R_MOD|R_SERVER|R_STEALTH)) //VOREStation Edit
return
msg = sanitize(msg)
@@ -47,7 +47,7 @@
set name = "Esay"
set hidden = 1
if(!check_rights(R_ADMIN|R_MOD|R_EVENT|R_SERVER|R_EVENT))
if(!check_rights(R_ADMIN|R_MOD|R_EVENT|R_SERVER|R_STEALTH)) //VOREStation Edit
return
msg = sanitize(msg)
+6
View File
@@ -515,6 +515,12 @@ Traitors and the like can also be revived with the previous role mostly intact.
if(new_character.mind)
new_character.mind.loaded_from_ckey = picked_ckey
new_character.mind.loaded_from_slot = picked_slot
for(var/lang in picked_client.prefs.alternate_languages)
var/datum/language/chosen_language = GLOB.all_languages[lang]
if(chosen_language)
if(is_lang_whitelisted(src,chosen_language) || (new_character.species && (chosen_language.name in new_character.species.secondary_langs)))
new_character.add_language(lang)
//VOREStation Add End
//If desired, apply equipment.
+26 -1
View File
@@ -71,4 +71,29 @@
feedback_add_details("admin_verb","SCAM") //heh
return new_mob
return new_mob
/client/proc/cmd_admin_z_narrate() // Allows administrators to fluff events a little easier -- TLE
set category = "Special Verbs"
set name = "Z Narrate"
set desc = "Narrates to your Z level."
if (!holder)
return
var/msg = input("Message:", text("Enter the text you wish to appear to everyone:")) as text
if(!(msg[1] == "<" && msg[length(msg)] == ">")) //You can use HTML but only if the whole thing is HTML. Tries to prevent admin 'accidents'.
msg = sanitize(msg)
if (!msg)
return
var/pos_z = get_z(src.mob)
if (!pos_z)
return
for(var/mob/M in player_list)
if(M.z == pos_z)
to_chat(M, msg)
log_admin("ZNarrate: [key_name(usr)] : [msg]")
message_admins("<font color='blue'><B> ZNarrate: [key_name_admin(usr)] : [msg]<BR></B></font>", 1)
feedback_add_details("admin_verb","GLNA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -1,15 +1,3 @@
var/UNATHI_EGG = "Unathi"
var/TAJARAN_EGG = "Tajaran"
var/AKULA_EGG = "Akula"
var/SKRELL_EGG = "Skrell"
var/SERGAL_EGG = "Sergal"
var/HUMAN_EGG = "Human"
var/NEVREAN_EGG = "nevrean"
var/SLIME_EGG = "Slime"
var/EGG_EGG = "Egg"
var/XENOCHIMERA_EGG = "Xenochimera"
var/XENOMORPH_EGG = "Xenomorph"
// Define a place to save appearance in character setup
/datum/preferences
var/vore_egg_type = "Egg" //The egg type they have.
@@ -26,8 +14,7 @@ var/XENOMORPH_EGG = "Xenomorph"
S["vore_egg_type"] << pref.vore_egg_type
/datum/category_item/player_setup_item/vore/egg/sanitize_character()
var/valid_vore_egg_types = global_vore_egg_types
pref.vore_egg_type = sanitize_inlist(pref.vore_egg_type, valid_vore_egg_types, initial(pref.vore_egg_type))
pref.vore_egg_type = sanitize_inlist(pref.vore_egg_type, global_vore_egg_types, initial(pref.vore_egg_type))
/datum/category_item/player_setup_item/vore/egg/copy_to_mob(var/mob/living/carbon/human/character)
character.vore_egg_type = pref.vore_egg_type
@@ -44,7 +31,7 @@ var/XENOMORPH_EGG = "Xenomorph"
var/list/vore_egg_types = global_vore_egg_types
var/selection = input(user, "Choose your character's egg type:", "Character Preference", pref.vore_egg_type) as null|anything in vore_egg_types
if(selection)
pref.vore_egg_type = vore_egg_types[selection]
pref.vore_egg_type = selection
return TOPIC_REFRESH
else
return
+7
View File
@@ -5,6 +5,13 @@
icon_state = "bottle-4"
prefill = list("bicaridine" = 60)
/obj/item/weapon/reagent_containers/glass/bottle/vermicetol
name = "vermicetol bottle"
desc = "A small bottle. Vermicetol is an powerful analgesic medication and can be used to treat blunt trauma."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle-4"
prefill = list("vermicetol" = 60)
/obj/item/weapon/reagent_containers/glass/bottle/keloderm
name = "keloderm bottle"
desc = "A small bottle. A fifty-fifty mix of the popular burn medications kelotane and deramline."
@@ -287,7 +287,8 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
icon_key += "_t" //VOREStation Edit.
if(istype(tail_style, /datum/sprite_accessory/tail/taur))
icon_key += tail_style.clip_mask_state
if(tail_style.clip_mask) //VOREStation Edit.
icon_key += tail_style.clip_mask_state
icon_key = "[icon_key][husk ? 1 : 0][fat ? 1 : 0][hulk ? 1 : 0][skeleton ? 1 : 0]"
var/icon/base_icon
@@ -301,14 +302,15 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon()
var/icon/Cutter = null
if(istype(tail_style, /datum/sprite_accessory/tail/taur)) // Tail icon 'cookie cutters' are filled in where icons are preserved. We need to invert that.
Cutter = new(icon = tail_style.icon, icon_state = tail_style.clip_mask)
if(tail_style.clip_mask) //VOREStation Edit.
Cutter = new(icon = tail_style.icon, icon_state = tail_style.clip_mask_state)
Cutter.Blend("#000000", ICON_MULTIPLY) // Make it all black.
Cutter.Blend("#000000", ICON_MULTIPLY) // Make it all black.
Cutter.SwapColor("#00000000", "#FFFFFFFF") // Everywhere empty, make white.
Cutter.SwapColor("#000000FF", "#00000000") // Everywhere black, make empty.
Cutter.SwapColor("#00000000", "#FFFFFFFF") // Everywhere empty, make white.
Cutter.SwapColor("#000000FF", "#00000000") // Everywhere black, make empty.
Cutter.Blend("#000000", ICON_MULTIPLY) // Black again.
Cutter.Blend("#000000", ICON_MULTIPLY) // Black again.
for(var/obj/item/organ/external/part in organs)
if(isnull(part) || part.is_stump() || part.is_hidden_by_tail()) //VOREStation Edit allowing tails to prevent bodyparts rendering, granting more spriter freedom for taur/digitigrade stuff.
+1 -1
View File
@@ -1,7 +1,7 @@
var/datum/planet/virgo3b/planet_virgo3b = null
/datum/time/virgo3b
seconds_in_day = 3 HOURS
seconds_in_day = 6 HOURS
/datum/planet/virgo3b
name = "Virgo-3B"
+28 -5
View File
@@ -38,6 +38,9 @@
var/fancy_vore = FALSE // Using the new sounds?
var/is_wet = TRUE // Is this belly's insides made of slimy parts?
var/wet_loop = TRUE // Does the belly have a fleshy loop playing?
var/obj/item/weapon/storage/vore_egg/ownegg // Is this belly creating an egg?
var/egg_type = "egg" // Default egg type and path.
var/egg_path = /obj/item/weapon/storage/vore_egg
//I don't think we've ever altered these lists. making them static until someone actually overrides them somewhere.
//Actual full digest modes
@@ -284,6 +287,11 @@
if (!(M in contents))
return 0 // They weren't in this belly anyway
for(var/mob/living/L in M.contents)
L.muffled = 0
for(var/obj/item/weapon/holder/H in M.contents)
H.held_mob.muffled = 0
//Place them into our drop_location
M.forceMove(drop_location())
@@ -544,9 +552,10 @@
//Handle a mob struggling
// Called from /mob/living/carbon/relaymove()
/obj/belly/proc/relay_resist(mob/living/R)
/obj/belly/proc/relay_resist(mob/living/R, obj/item/C)
if (!(R in contents))
return // User is not in this belly
if(!C)
return // User is not in this belly
R.setClickCooldown(50)
@@ -555,9 +564,13 @@
to_chat(owner, "<span class='warning'>Someone is attempting to climb out of your [lowertext(name)]!</span>")
if(do_after(R, escapetime, owner, incapacitation_flags = INCAPACITATION_DEFAULT & ~INCAPACITATION_RESTRAINED))
if((owner.stat || escapable) && (R.loc == src)) //Can still escape?
release_specific_contents(R)
return
if((owner.stat || escapable)) //Can still escape?
if(C)
release_specific_contents(C)
return
if(R.loc == src)
release_specific_contents(R)
return
else if(R.loc != src) //Aren't even in the belly. Quietly fail.
return
else //Belly became inescapable or mob revived
@@ -600,6 +613,13 @@
to_chat(R, "<span class='warning'>You start to climb out of \the [lowertext(name)].</span>")
to_chat(owner, "<span class='warning'>Someone is attempting to climb out of your [lowertext(name)]!</span>")
if(do_after(R, escapetime))
if(escapable && C)
release_specific_contents(C)
to_chat(R,"<span class='warning'>Your struggles successfully cause [owner] to squeeze your container out of their \the [lowertext(name)].</span>")
to_chat(owner,"<span class='warning'>[C] suddenly slips out of your [lowertext(name)]!</span>")
for(var/mob/M in hearers(4, owner))
M.show_message("<span class='warning'>[C] suddenly slips out of [owner]'s [lowertext(name)]!</span>", 2)
return
if((escapable) && (R.loc == src) && !R.absorbed) //Does the owner still have escapable enabled?
release_specific_contents(R)
to_chat(R,"<span class='warning'>You climb out of \the [lowertext(name)].</span>")
@@ -630,6 +650,9 @@
to_chat(R, "<span class='warning'>Your attempt to escape [lowertext(name)] has failed and your struggles only results in you sliding into [owner]'s [transferlocation]!</span>")
to_chat(owner, "<span class='warning'>Someone slid into your [transferlocation] due to their struggling inside your [lowertext(name)]!</span>")
if(C)
transfer_contents(C, dest_belly)
return
transfer_contents(R, dest_belly)
return
@@ -14,6 +14,9 @@ GLOBAL_LIST_INIT(digest_modes, list())
/datum/digest_mode/proc/process_mob(obj/belly/B, mob/living/L)
return null
/datum/digest_mode/proc/handle_atoms(obj/belly/B, list/touchable_atoms)
return FALSE
/datum/digest_mode/digest
id = DM_DIGEST
noise_chance = 50
@@ -132,8 +135,69 @@ GLOBAL_LIST_INIT(digest_modes, list())
// E G G
/datum/digest_mode/egg
id = DM_EGG
/*
/datum/digest_mode/egg/process_mob(obj/belly/B, mob/living/carbon/human/H)
if(!istype(H) || H.stat == DEAD || H.absorbed)
return null
B.put_in_egg(H, 1)
B.put_in_egg(H, 1)*/
/datum/digest_mode/egg/handle_atoms(obj/belly/B, list/touchable_atoms)
var/list/egg_contents = list()
for(var/E in touchable_atoms)
if(istype(E, /obj/item/weapon/storage/vore_egg)) // Don't egg other eggs.
continue
if(isliving(E))
var/mob/living/L = E
if(L.absorbed)
continue
egg_contents += L
if(isitem(E))
egg_contents += E
if(egg_contents.len)
if(!B.ownegg)
if(B.owner.vore_egg_type in tf_vore_egg_types)
B.egg_type = B.owner.vore_egg_type
B.egg_path = tf_vore_egg_types[B.egg_type]
B.ownegg = new B.egg_path(B)
for(var/atom/movable/C in egg_contents)
if(isitem(C) && egg_contents.len == 1) //Only egging one item
var/obj/item/I = C
B.ownegg.w_class = I.w_class
B.ownegg.max_storage_space = B.ownegg.w_class
I.forceMove(B.ownegg)
B.ownegg.icon_scale_x = 0.2 * B.ownegg.w_class
B.ownegg.icon_scale_y = 0.2 * B.ownegg.w_class
B.ownegg.update_transform()
egg_contents -= I
B.ownegg = null
return
if(isliving(C))
var/mob/living/M = C
B.ownegg.w_class = M.size_multiplier * 4 //Egg size and weight scaled to match occupant.
var/obj/item/weapon/holder/H = new M.holder_type(B.ownegg)
H.held_mob = M
M.forceMove(H)
H.sync(M)
B.ownegg.max_storage_space = H.w_class
B.ownegg.icon_scale_x = 0.25 * B.ownegg.w_class
B.ownegg.icon_scale_y = 0.25 * B.ownegg.w_class
B.ownegg.update_transform()
egg_contents -= M
if(B.ownegg.w_class > 4)
B.ownegg.slowdown = B.ownegg.w_class - 4
B.ownegg = null
return
C.forceMove(B.ownegg)
if(isitem(C))
var/obj/item/I = C
B.ownegg.w_class += I.w_class //Let's assume a regular outfit can reach total w_class of 16.
B.ownegg.calibrate_size()
B.ownegg.orient2hud()
B.ownegg.w_class = clamp(B.ownegg.w_class * 0.25, 1, 8) //A total w_class of 16 will result in a backpack sized egg.
B.ownegg.icon_scale_x = 0.25 * B.ownegg.w_class
B.ownegg.icon_scale_y = 0.25 * B.ownegg.w_class
B.ownegg.update_transform()
if(B.ownegg.w_class > 4)
B.ownegg.slowdown = B.ownegg.w_class - 4
B.ownegg = null
return
+8 -5
View File
@@ -31,6 +31,14 @@
if(!length(touchable_atoms))
return
var/datum/digest_mode/DM = GLOB.digest_modes["[digest_mode]"]
if(!DM)
log_debug("Digest mode [digest_mode] didn't exist in the digest_modes list!!")
return FALSE
if(DM.handle_atoms(src, touchable_atoms))
updateVRPanels()
return
var/list/touchable_mobs = null
var/list/hta_returns = handle_touchable_atoms(touchable_atoms)
@@ -54,11 +62,6 @@
continue // don't give digesty messages to indigestible people
to_chat(M, "<span class='notice'>[pick(EL)]</span>")
var/datum/digest_mode/DM = GLOB.digest_modes["[digest_mode]"]
if(!DM)
log_debug("Digest mode [digest_mode] didn't exist in the digest_modes list!!")
return FALSE
if(!digestion_noise_chance)
digestion_noise_chance = DM.noise_chance
+4 -1
View File
@@ -105,6 +105,9 @@ var/list/gurgled_overlays = list(
/obj/item/weapon/reagent_containers/food/gurgle_contaminate(var/atom/movable/item_storage = null)
return FALSE
/obj/item/weapon/storage/vore_egg/gurgle_contaminate(var/atom/movable/item_storage = null)
return FALSE
/obj/item/weapon/holder/gurgle_contaminate(var/atom/movable/item_storage = null)
if(isbelly(loc))
digest_act(item_storage)
@@ -150,4 +153,4 @@ var/list/gurgled_overlays = list(
if(pockets.contents)
for(var/obj/item/O in pockets.contents)
O.gurgle_contaminate(item_storage, contamination_flavor, contamination_color)
..()
..()
+8 -8
View File
@@ -236,7 +236,7 @@
// Host is inside someone else, and is trying to interact with something else inside that person.
if("pick_from_inside")
return pick_from_inside(usr, params)
// Host is trying to interact with something in host's belly.
if("pick_from_outside")
return pick_from_outside(usr, params)
@@ -267,7 +267,7 @@
host.vore_selected = NB
unsaved_changes = TRUE
return TRUE
if("bellypick")
host.vore_selected = locate(params["bellypick"])
return TRUE
@@ -403,11 +403,11 @@
if(!(target in OB))
return TRUE // Aren't here anymore, need to update menu
var/intent = "Examine"
if(isliving(target))
intent = alert("What do you want to do to them?","Query","Examine","Help Out","Devour")
else if(istype(target, /obj/item))
intent = alert("What do you want to do to that?","Query","Examine","Use Hand")
@@ -505,7 +505,7 @@
host.vore_selected.transfer_contents(target, choice, 1)
return TRUE
return
var/atom/movable/target = locate(params["pick"])
if(!(target in host.vore_selected))
return TRUE // Not in our X anymore, update UI
@@ -602,7 +602,7 @@
if(!toggle_addon)
return FALSE
host.vore_selected.mode_flags ^= host.vore_selected.mode_flag_list[toggle_addon]
host.vore_selected.items_preserved.Cut() //Re-evaltuate all items in belly on
host.vore_selected.items_preserved.Cut() //Re-evaltuate all items in belly on
. = TRUE
if("b_item_mode")
var/list/menu_list = host.vore_selected.item_digest_modes.Copy()
@@ -632,7 +632,7 @@
host.vore_selected.contamination_color = new_color
host.vore_selected.items_preserved.Cut() //To re-contaminate for new color
. = TRUE
if("b_desc")
if("b_desc")
var/new_desc = html_encode(input(usr,"Belly Description ([BELLIES_DESC_MAX] char limit):","New Description",host.vore_selected.desc) as message|null)
if(new_desc)
@@ -865,6 +865,6 @@
qdel(host.vore_selected)
host.vore_selected = host.vore_organs[1]
. = TRUE
if(.)
unsaved_changes = TRUE
@@ -48,3 +48,23 @@
..()
for(var/mob/living/carbon/human/I in contents)
item_state = lowertext(I.species.name)
//Egg features.
/obj/item/weapon/holder/attack_hand(mob/living/user as mob)
if(istype(src.loc, /obj/item/weapon/storage/vore_egg)) //Don't scoop up the egged mob
src.pickup(user)
user.drop_from_inventory(src)
return
..()
/obj/item/weapon/holder/container_resist(mob/living/held)
if(!istype(src.loc, /obj/item/weapon/storage/vore_egg))
..()
else
var/obj/item/weapon/storage/vore_egg/E = src.loc
if(isbelly(E.loc))
var/obj/belly/B = E.loc
B.relay_resist(held, E)
return
E.hatch(held)
return