There's a bounty for this right? i spent nearly two full days at this
This commit is contained in:
@@ -99,7 +99,7 @@
|
||||
var/list/current_teams = list()
|
||||
for(var/datum/team/abductor_team/T in get_all_teams(/datum/team/abductor_team))
|
||||
current_teams[T.name] = T
|
||||
var/choice = input(admin,"Add to which team ?") as null|anything in (current_teams + "new team")
|
||||
var/choice = tgui_input_list(admin,"Add to which team ?", "", current_teams + "new team")
|
||||
if (choice == "new team")
|
||||
team = new
|
||||
else if(choice in current_teams)
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
for(var/i in 1 to GLOB.blob_nodes.len)
|
||||
var/obj/structure/blob/node/B = GLOB.blob_nodes[i]
|
||||
nodes["Blob Node #[i] ([get_area_name(B)])"] = B
|
||||
var/node_name = input(src, "Choose a node to jump to.", "Node Jump") in nodes
|
||||
var/node_name = tgui_input_list(src, "Choose a node to jump to.", "Node Jump", nodes)
|
||||
var/obj/structure/blob/node/chosen_node = nodes[node_name]
|
||||
if(chosen_node)
|
||||
forceMove(chosen_node.loc)
|
||||
@@ -352,7 +352,7 @@
|
||||
var/datum/blobstrain/bs = pick((GLOB.valid_blobstrains))
|
||||
choices[initial(bs.name)] = bs
|
||||
|
||||
var/choice = input(usr, "Please choose a new strain","Strain") as anything in choices
|
||||
var/choice = tgui_input_list(usr, "Please choose a new strain","Strain", choices)
|
||||
if (choice && choices[choice] && !QDELETED(src))
|
||||
var/datum/blobstrain/bs = choices[choice]
|
||||
set_strain(bs)
|
||||
|
||||
@@ -289,7 +289,7 @@
|
||||
options["\[ Not Now \]"] = null
|
||||
// Abort?
|
||||
if(options.len > 1)
|
||||
var/choice = input(owner.current, "You have the opportunity to grow more ancient at the cost of [level_bloodcost] units of blood. Select a power to advance your Rank.", "Your Blood Thickens...") in options
|
||||
var/choice = tgui_input_list(owner.current, "You have the opportunity to grow more ancient at the cost of [level_bloodcost] units of blood. Select a power to advance your Rank.", "Your Blood Thickens...", options)
|
||||
// Cheat-Safety: Can't keep opening/closing coffin to spam levels
|
||||
if(bloodsucker_level_unspent <= 0) // Already spent all your points, and tried opening/closing your coffin, pal.
|
||||
return
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
continue
|
||||
candidates[L.mind.name] = L.mind
|
||||
|
||||
var/choice = input(admin,"Choose the blood brother.", "Brother") as null|anything in candidates
|
||||
var/choice = tgui_input_list(admin,"Choose the blood brother.", "Brother", candidates)
|
||||
if(!choice)
|
||||
return
|
||||
var/datum/mind/bro = candidates[choice]
|
||||
|
||||
@@ -60,7 +60,7 @@ GLOBAL_LIST_EMPTY(hivemind_bank)
|
||||
to_chat(user, "<span class='notice'>The airwaves already have all of our DNA.</span>")
|
||||
return
|
||||
|
||||
var/chosen_name = input("Select a DNA to channel: ", "Channel DNA", null) as null|anything in names
|
||||
var/chosen_name = tgui_input_list(user, "Select a DNA to channel: ", "Channel DNA", names)
|
||||
if(!chosen_name)
|
||||
return
|
||||
|
||||
@@ -107,7 +107,7 @@ GLOBAL_LIST_EMPTY(hivemind_bank)
|
||||
to_chat(user, "<span class='notice'>There's no new DNA to absorb from the air.</span>")
|
||||
return
|
||||
|
||||
var/S = input("Select a DNA absorb from the air: ", "Absorb DNA", null) as null|anything in names
|
||||
var/S = tgui_input_list(user, "Select a DNA absorb from the air: ", "Absorb DNA", names)
|
||||
if(!S)
|
||||
return
|
||||
var/datum/changelingprofile/chosen_prof = names[S]
|
||||
|
||||
@@ -459,7 +459,7 @@
|
||||
for(var/datum/clockwork_rite/R in GLOB.all_clockwork_rites)
|
||||
if(is_servant_of_ratvar(user, require_full_power = TRUE) || !R.requires_full_power)
|
||||
possible_rites[R] = R
|
||||
var/input_key = input(user, "Choose a rite", "Choosing a rite") as null|anything in possible_rites
|
||||
var/input_key = tgui_input_list(user, "Choose a rite", "Choosing a rite", possible_rites)
|
||||
if(!input_key)
|
||||
return
|
||||
var/datum/clockwork_rite/CR = possible_rites[input_key]
|
||||
|
||||
@@ -187,7 +187,7 @@
|
||||
if(!possible_targets.len)
|
||||
to_chat(invoker, "<span class='warning'>There are no other eligible targets for a Spatial Gateway!</span>")
|
||||
return FALSE
|
||||
var/input_target_key = input(invoker, "Choose a target to form a rift to.", "Spatial Gateway") as null|anything in possible_targets
|
||||
var/input_target_key = tgui_input_list(invoker, "Choose a target to form a rift to.", "Spatial Gateway", possible_targets)
|
||||
var/atom/movable/target = possible_targets[input_target_key]
|
||||
if(!src || !input_target_key || !invoker || !invoker.canUseTopic(src, !issilicon(invoker)) || !is_servant_of_ratvar(invoker) || (isitem(src) && invoker.get_active_held_item() != src) || !invoker.can_speak_vocal())
|
||||
return FALSE //if any of the involved things no longer exist, the invoker is stunned, too far away to use the object, or does not serve ratvar, or if the object is an item and not in the mob's active hand, fail
|
||||
|
||||
@@ -371,7 +371,7 @@
|
||||
update_quickbind()
|
||||
else
|
||||
// todo: async this due to ((input)) but its fine for now
|
||||
var/target_index = input("Position of [initial(path.name)], 1 to [maximum_quickbound]?", "Input") as num|null
|
||||
var/target_index = tgui_input_num(usr, "Position of [initial(path.name)], 1 to [maximum_quickbound]?", "Input")
|
||||
if(isnum(target_index) && target_index > 0 && target_index <= maximum_quickbound && !..())
|
||||
var/datum/clockwork_scripture/S
|
||||
if(LAZYLEN(quickbound) >= target_index)
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
commands += "Power This Structure"
|
||||
if(P.obj_integrity < P.max_integrity)
|
||||
commands += "Repair This Structure"
|
||||
var/roma_invicta = input(src, "Choose a command to issue to your cult!", "Issue Commands") as null|anything in commands
|
||||
var/roma_invicta = tgui_input_list(src, "Choose a command to issue to your cult!", "Issue Commands", commands)
|
||||
if(!roma_invicta)
|
||||
return
|
||||
var/command_text = ""
|
||||
@@ -290,7 +290,7 @@
|
||||
to_chat(owner, "<span class='warning'>There are no Obelisks to warp to!</span>")
|
||||
return
|
||||
|
||||
var/target_key = input(owner, "Choose an Obelisk to warp to.", "Obelisk Warp") as null|anything in possible_targets
|
||||
var/target_key = tgui_input_list(owner, "Choose an Obelisk to warp to.", "Obelisk Warp", possible_targets)
|
||||
var/obj/structure/destructible/clockwork/powered/clockwork_obelisk/target = possible_targets[target_key]
|
||||
|
||||
if(!target_key || !owner)
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
to_chat(owner, "<span class='cultitalic'>Your body has reached its limit, you cannot store more than [MAX_BLOODCHARGE] spells at once. <b>Pick a spell to nullify.</b></span>")
|
||||
else
|
||||
to_chat(owner, "<span class='cultitalic'>Your body has reached its limit, <b><u>you cannot have more than [RUNELESS_MAX_BLOODCHARGE] spells at once without an empowering rune! Pick a spell to nullify.</b></u></span>")
|
||||
var/nullify_spell = input(owner, "Choose a spell to remove.", "Current Spells") as null|anything in spells
|
||||
var/nullify_spell = tgui_input_list(owner, "Choose a spell to remove.", "Current Spells", spells)
|
||||
if(nullify_spell)
|
||||
qdel(nullify_spell)
|
||||
return
|
||||
@@ -61,9 +61,9 @@
|
||||
var/cult_name = initial(J.name)
|
||||
possible_spells[cult_name] = J
|
||||
possible_spells += "(REMOVE SPELL)"
|
||||
entered_spell_name = input(owner, "Pick a blood spell to prepare...", "Spell Choices") as null|anything in possible_spells
|
||||
entered_spell_name = tgui_input_list(owner, "Pick a blood spell to prepare...", "Spell Choices", possible_spells)
|
||||
if(entered_spell_name == "(REMOVE SPELL)")
|
||||
var/nullify_spell = input(owner, "Choose a spell to remove.", "Current Spells") as null|anything in spells
|
||||
var/nullify_spell = tgui_input_list(owner, "Choose a spell to remove.", "Current Spells", spells)
|
||||
if(nullify_spell)
|
||||
qdel(nullify_spell)
|
||||
return
|
||||
@@ -497,7 +497,7 @@
|
||||
log_game("Teleport spell failed - user in away mission")
|
||||
return
|
||||
|
||||
var/input_rune_key = input(user, "Choose a rune to teleport to.", "Rune to Teleport to") as null|anything in potential_runes //we know what key they picked
|
||||
var/input_rune_key = tgui_input_list(user, "Choose a rune to teleport to.", "Rune to Teleport to", potential_runes) //we know what key they picked
|
||||
var/obj/effect/rune/teleport/actual_selected_rune = potential_runes[input_rune_key] //what rune does that key correspond to?
|
||||
if(QDELETED(src) || !user || !user.is_holding(src) || user.incapacitated() || !actual_selected_rune || !proximity)
|
||||
return
|
||||
@@ -787,7 +787,7 @@
|
||||
/obj/item/melee/blood_magic/manipulator/attack_self(mob/living/user)
|
||||
if(iscultist(user))
|
||||
var/list/options = list("Blood Spear (150)", "Blood Bolt Barrage (300)", "Blood Beam (500)")
|
||||
var/choice = input(user, "Choose a greater blood rite...", "Greater Blood Rites") as null|anything in options
|
||||
var/choice = tgui_input_list(user, "Choose a greater blood rite...", "Greater Blood Rites", options)
|
||||
if(!choice)
|
||||
to_chat(user, "<span class='cultitalic'>You decide against conducting a greater blood rite.</span>")
|
||||
return
|
||||
|
||||
@@ -665,7 +665,7 @@
|
||||
for(var/datum/mind/M in SSticker.mode.cult)
|
||||
if(M.current && M.current.stat != DEAD)
|
||||
cultists |= M.current
|
||||
var/mob/living/cultist_to_receive = input(user, "Who do you wish to call to [src]?", "Followers of the Geometer") as null|anything in (cultists - user)
|
||||
var/mob/living/cultist_to_receive = tgui_input_list(user, "Who do you wish to call to [src]?", "Followers of the Geometer", cultists - user)
|
||||
if(!Adjacent(user) || !src || QDELETED(src) || user.incapacitated())
|
||||
return
|
||||
if(!cultist_to_receive)
|
||||
|
||||
@@ -53,7 +53,7 @@ This file contains the cult dagger and rune list code
|
||||
|
||||
if(!check_rune_turf(Turf, user))
|
||||
return
|
||||
entered_rune_name = input(user, "Choose a rite to scribe.", "Sigils of Power") as null|anything in GLOB.rune_types
|
||||
entered_rune_name = tgui_input_list(user, "Choose a rite to scribe.", "Sigils of Power", GLOB.rune_types)
|
||||
if(!src || QDELETED(src) || !Adjacent(user) || user.incapacitated() || !check_rune_turf(Turf, user))
|
||||
return
|
||||
rune_to_scribe = GLOB.rune_types[entered_rune_name]
|
||||
|
||||
@@ -385,7 +385,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
fail_invoke()
|
||||
return
|
||||
|
||||
var/input_rune_key = input(user, "Choose a rune to teleport to.", "Rune to Teleport to") as null|anything in potential_runes //we know what key they picked
|
||||
var/input_rune_key = tgui_input_list(user, "Choose a rune to teleport to.", "Rune to Teleport to", potential_runes) //we know what key they picked
|
||||
var/obj/effect/rune/teleport/actual_selected_rune = potential_runes[input_rune_key] //what rune does that key correspond to?
|
||||
if(!Adjacent(user) || !src || QDELETED(src) || user.incapacitated() || !actual_selected_rune)
|
||||
fail_invoke()
|
||||
@@ -562,7 +562,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
fail_invoke()
|
||||
return
|
||||
if(potential_revive_mobs.len > 1)
|
||||
mob_to_revive = input(user, "Choose a cultist to revive.", "Cultist to Revive") as null|anything in potential_revive_mobs
|
||||
mob_to_revive = tgui_input_list(user, "Choose a cultist to revive.", "Cultist to Revive", potential_revive_mobs)
|
||||
else
|
||||
mob_to_revive = potential_revive_mobs[1]
|
||||
if(QDELETED(src) || !validness_checks(mob_to_revive, user))
|
||||
@@ -719,7 +719,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
for(var/datum/mind/M in SSticker.mode.cult)
|
||||
if(!(M.current in invokers) && M.current && M.current.stat != DEAD)
|
||||
cultists |= M.current
|
||||
var/mob/living/cultist_to_summon = input(user, "Who do you wish to call to [src]?", "Followers of the Geometer") as null|anything in cultists
|
||||
var/mob/living/cultist_to_summon = tgui_input_list(user, "Who do you wish to call to [src]?", "Followers of the Geometer", cultists)
|
||||
if(!Adjacent(user) || !src || QDELETED(src) || user.incapacitated())
|
||||
return
|
||||
if(!cultist_to_summon)
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
|
||||
/datum/antagonist/sintouched/admin_add(datum/mind/new_owner,mob/admin)
|
||||
var/choices = sins + "Random"
|
||||
var/chosen_sin = input(admin,"What kind ?","Sin kind") as null|anything in choices
|
||||
var/chosen_sin = tgui_input_list(admin,"What kind ?","Sin kind", choices)
|
||||
if(!chosen_sin)
|
||||
return
|
||||
if(chosen_sin in sins)
|
||||
|
||||
@@ -350,7 +350,7 @@
|
||||
|
||||
drawing = TRUE
|
||||
|
||||
var/type = pick_list[input(user,"Choose the rune","Rune") as null|anything in pick_list ]
|
||||
var/type = pick_list[tgui_input_list(user,"Choose the rune","Rune", pick_list)]
|
||||
if(!type)
|
||||
drawing = FALSE
|
||||
return
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
to_chat(user, "<span class='warning'>These items don't possess the required fingerprints or DNA.</span>")
|
||||
return FALSE
|
||||
|
||||
var/chosen_mob = input("Select the person you wish to curse","Your target") as null|anything in sortList(compiled_list, /proc/cmp_mob_realname_dsc)
|
||||
var/chosen_mob = tgui_input_list(user, "Select the person you wish to curse","Your target", sortList(compiled_list, /proc/cmp_mob_realname_dsc))
|
||||
if(!chosen_mob)
|
||||
return FALSE
|
||||
curse(compiled_list[chosen_mob])
|
||||
@@ -296,7 +296,7 @@
|
||||
if(!targeted)
|
||||
break
|
||||
targets["[targeted.current.real_name] the [targeted.assigned_role]"] = targeted.current
|
||||
LH.target = targets[input(user,"Choose your next target","Target") in targets]
|
||||
LH.target = targets[tgui_input_list(user,"Choose your next target","Target", targets)]
|
||||
|
||||
if(!LH.target && targets.len)
|
||||
LH.target = pick(targets) //Tsk tsk, you can and will get another target if you want it or not.
|
||||
|
||||
@@ -621,7 +621,7 @@
|
||||
if(!originator?.linked_mobs[living_owner])
|
||||
CRASH("Uh oh the mansus link got somehow activated without it being linked to a raw prophet or the mob not being in a list of mobs that should be able to do it.")
|
||||
|
||||
var/message = sanitize(input("Message:", "Telepathy from the Manse") as text|null)
|
||||
var/message = sanitize(tgui_input_text(usr, "Message:", "Telepathy from the Manse"))
|
||||
|
||||
if(QDELETED(living_owner))
|
||||
return
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
for(var/X in subtypesof(/obj/item/eldritch_potion))
|
||||
var/obj/item/eldritch_potion/potion = X
|
||||
lst[initial(potion.name)] = potion
|
||||
var/type = lst[input(user,"Choose your brew","Brew") in lst]
|
||||
var/type = lst[tgui_input_list(user,"Choose your brew","Brew", lst)]
|
||||
playsound(src, 'sound/misc/desceration-02.ogg', 75, TRUE)
|
||||
new type(drop_location())
|
||||
current_mass = 0
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
if(animation_playing)
|
||||
to_chat(user, "<span class='notice'>\the [src] is recharging.</span>")
|
||||
return
|
||||
var/borg_icon = input(user, "Select an icon!", "Robot Icon", null) as null|anything in engymodels
|
||||
var/borg_icon = tgui_input_list(user, "Select an icon!", "Robot Icon", engymodels)
|
||||
if(!borg_icon)
|
||||
return FALSE
|
||||
switch(borg_icon)
|
||||
|
||||
@@ -285,7 +285,7 @@
|
||||
|
||||
/obj/item/voodoo/attack_self(mob/user)
|
||||
if(!target && length(possible))
|
||||
target = input(user, "Select your victim!", "Voodoo") as null|anything in possible
|
||||
target = tgui_input_list(user, "Select your victim!", "Voodoo", possible)
|
||||
return
|
||||
|
||||
if(user.zone_selected == BODY_ZONE_CHEST)
|
||||
@@ -300,7 +300,7 @@
|
||||
if(target && cooldown < world.time)
|
||||
switch(user.zone_selected)
|
||||
if(BODY_ZONE_PRECISE_MOUTH)
|
||||
var/wgw = sanitize(input(user, "What would you like the victim to say", "Voodoo", null) as text)
|
||||
var/wgw = sanitize(tgui_input_text(user, "What would you like the victim to say", "Voodoo", null))
|
||||
target.say(wgw, forced = "voodoo doll")
|
||||
log_game("[key_name(user)] made [key_name(target)] say [wgw] with a voodoo doll.")
|
||||
if(BODY_ZONE_PRECISE_EYES)
|
||||
|
||||
Reference in New Issue
Block a user