Merge pull request #11521 from Arkatos1/splitfix

Blob split consciousness fix
This commit is contained in:
variableundefined
2019-05-23 22:09:45 +08:00
committed by GitHub
3 changed files with 16 additions and 13 deletions
+1 -1
View File
@@ -126,7 +126,7 @@
/obj/screen/blob/Split
icon_state = "ui_split"
name = "Split consciousness (100)"
desc = "Creates another Blob Overmind at the nearest node. One use only.<br>Offsprings are be unable to use this ability."
desc = "Creates another Blob Overmind at the targeted node. One use only.<br>Offspring are unable to use this ability."
/obj/screen/blob/Split/Click()
if(isovermind(usr))
+5 -2
View File
@@ -105,7 +105,11 @@
spawn()
if(!new_overmind)
candidates = pollCandidates("Do you want to play as a blob?", ROLE_BLOB, 1)
if(is_offspring)
candidates = pollCandidates("Do you want to play as a blob offspring?", ROLE_BLOB, 1)
else
candidates = pollCandidates("Do you want to play as a blob?", ROLE_BLOB, 1)
if(candidates.len)
C = pick(candidates)
else
@@ -123,7 +127,6 @@
if(is_offspring)
B.is_offspring = TRUE
/obj/structure/blob/core/proc/lateblobtimer()
addtimer(CALLBACK(src, .proc/lateblobcheck), 50)
+10 -10
View File
@@ -350,31 +350,32 @@
BS.Goto(pick(surrounding_turfs), BS.move_to_delay)
return
/mob/camera/blob/verb/split_consciousness()
set category = "Blob"
set name = "Split consciousness (100) (One use)"
set desc = "Expend resources to attempt to produce another sentient overmind."
var/turf/T = get_turf(src)
if(!T)
return
if(split_used)
to_chat(src, "<span class='warning'>You have already produced an offspring.</span>")
return
if(is_offspring)
to_chat(src, "<span class='warning'>You cannot split as an offspring of another Blob.</span>")
return
if(!blob_nodes || !blob_nodes.len)
to_chat(src, "<span class='warning'>A node is required to birth your offspring...</span>")
return
var/obj/structure/blob/node/N = locate(/obj/structure/blob) in blob_nodes
if(!N)
to_chat(src, "<span class='warning'>A node is required to birth your offspring...</span>")
return
var/obj/structure/blob/N = (locate(/obj/structure/blob) in T)
if(!N)
to_chat(src, "<span class='warning'>A node is required to birth your offspring.</span>")
return
if(!istype(N, /obj/structure/blob/node))
to_chat(src, "<span class='warning'>A node is required to birth your offspring.</span>")
return
if(!can_buy(100))
return
split_used = TRUE
new /obj/structure/blob/core/ (get_turf(N), 200, null, blob_core.point_rate, "offspring")
qdel(N)
@@ -382,7 +383,6 @@
var/datum/game_mode/blob/BL = SSticker.mode
BL.blobwincount += initial(BL.blobwincount)
/mob/camera/blob/verb/blob_broadcast()
set category = "Blob"
set name = "Blob Broadcast"