[MIRROR] fix gradient selection (#10328)

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2025-03-07 07:48:14 -07:00
committed by GitHub
parent c9ca14466a
commit b128c3af7b
3 changed files with 27 additions and 3 deletions

View File

@@ -616,6 +616,28 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
pref.grad_style = new_grad_style
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["grad_style_left"])
var/H = href_list["grad_style_left"]
var/list/valid_gradients = GLOB.hair_gradients
var/start = valid_gradients.Find(H)
if(start != 1) //If we're not the beginning of the list, become the previous element.
pref.grad_style = valid_gradients[start-1]
else //But if we ARE, become the final element.
pref.grad_style = valid_gradients[valid_gradients.len]
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["grad_style_right"])
var/H = href_list["grad_style_right"]
var/list/valid_gradients = GLOB.hair_gradients
var/start = valid_gradients.Find(H)
if(start != valid_gradients.len) //If we're not the end of the list, become the next element.
pref.grad_style = valid_gradients[start+1]
else //But if we ARE, become the first element.
pref.grad_style = valid_gradients[1]
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["hair_style_left"])
var/H = href_list["hair_style_left"]
var/list/valid_hairstyles = pref.get_valid_hairstyles(user)

View File

@@ -1330,9 +1330,8 @@
var/datum/mob_descriptor/descriptor = species.descriptors[desctype]
descriptors[desctype] = descriptor.default_value
//This was the old location of initialize_vessel. A race condiiton happened here because of species code being JANK. This resulted in runtimes during unit test, but worked perfectly fine in game.
//Now, initialize_vessel has been moved to human/Initialize()
// addtimer(CALLBACK(src, PROC_REF(initialize_vessel)), 0, TIMER_DELETE_ME) //Doing ASYNC fails here. This used to be a spawn(0)
if(vessel)
initialize_vessel()
// Rebuild the HUD. If they aren't logged in then login() should reinstantiate it for them.
update_hud()

View File

@@ -184,6 +184,9 @@
new_player_panel_proc()
if(href_list["observe"])
if(!SSticker || SSticker.current_state == GAME_STATE_INIT)
to_chat(src, span_warning("The game is still setting up, please try again later."))
return 0
if(tgui_alert(src,"Are you sure you wish to observe? If you do, make sure to not use any knowledge gained from observing if you decide to join later.","Observe Round?",list("Yes","No")) == "Yes")
if(!client) return 1