mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-19 14:51:27 +00:00
* optimizes MouseEnter * Update code/game/atoms_movable.dm Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com> * Update code/game/turfs/simulated/walls.dm * spelling mistake GO --------- Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
206 lines
5.7 KiB
Plaintext
206 lines
5.7 KiB
Plaintext
/mob/camera/blob/create_mob_hud()
|
|
if(client && !hud_used)
|
|
hud_used = new /datum/hud/blob_overmind(src)
|
|
|
|
/obj/screen/blob
|
|
icon = 'icons/mob/blob.dmi'
|
|
|
|
/obj/screen/blob/MouseEntered(location,control,params)
|
|
. = ..()
|
|
openToolTip(usr,src,params,title = name,content = desc, theme = "blob")
|
|
|
|
/obj/screen/blob/MouseExited()
|
|
closeToolTip(usr)
|
|
return ..()
|
|
|
|
/obj/screen/blob/BlobHelp
|
|
icon_state = "ui_help"
|
|
name = "Blob Help"
|
|
desc = "Help on playing blob!"
|
|
|
|
/obj/screen/blob/BlobHelp/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.blob_help()
|
|
|
|
/obj/screen/blob/JumpToNode
|
|
icon_state = "ui_tonode"
|
|
name = "Jump to Node"
|
|
desc = "Moves your camera to a selected blob node."
|
|
|
|
/obj/screen/blob/JumpToNode/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.jump_to_node()
|
|
|
|
/obj/screen/blob/JumpToCore
|
|
icon_state = "ui_tocore"
|
|
name = "Jump to Core"
|
|
desc = "Moves your camera to your blob core."
|
|
|
|
/obj/screen/blob/JumpToCore/MouseEntered(location,control,params)
|
|
if(hud && hud.mymob && isovermind(hud.mymob))
|
|
name = initial(name)
|
|
desc = initial(desc)
|
|
return ..()
|
|
|
|
/obj/screen/blob/JumpToCore/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.transport_core()
|
|
|
|
/obj/screen/blob/Blobbernaut
|
|
icon_state = "ui_blobbernaut"
|
|
name = "Produce Blobbernaut (60)"
|
|
desc = "Produces a strong, intelligent blobbernaut from a factory blob for 60 resources.<br>The factory blob will be destroyed in the process."
|
|
|
|
/obj/screen/blob/Blobbernaut/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.create_blobbernaut()
|
|
|
|
/obj/screen/blob/StorageBlob
|
|
icon_state = "ui_storage"
|
|
name = "Produce Storage Blob (40)"
|
|
desc = "Produces a storage blob for 40 resources.<br>Storage blobs will raise your max resource cap by 50."
|
|
|
|
/obj/screen/blob/StorageBlob/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.create_storage()
|
|
|
|
/obj/screen/blob/ResourceBlob
|
|
icon_state = "ui_resource"
|
|
name = "Produce Resource Blob (40)"
|
|
desc = "Produces a resource blob for 40 resources.<br>Resource blobs will give you resources every few seconds."
|
|
|
|
/obj/screen/blob/ResourceBlob/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.create_resource()
|
|
|
|
/obj/screen/blob/NodeBlob
|
|
icon_state = "ui_node"
|
|
name = "Produce Node Blob (60)"
|
|
desc = "Produces a node blob for 60 resources.<br>Node blobs will expand and activate nearby resource and factory blobs."
|
|
|
|
/obj/screen/blob/NodeBlob/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.create_node()
|
|
|
|
/obj/screen/blob/FactoryBlob
|
|
icon_state = "ui_factory"
|
|
name = "Produce Factory Blob (60)"
|
|
desc = "Produces a factory blob for 60 resources.<br>Factory blobs will produce spores every few seconds."
|
|
|
|
/obj/screen/blob/FactoryBlob/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.create_factory()
|
|
|
|
/obj/screen/blob/ReadaptChemical
|
|
icon_state = "ui_chemswap"
|
|
name = "Readapt Chemical (50)"
|
|
desc = "Randomly rerolls your chemical for 50 resources."
|
|
|
|
/obj/screen/blob/ReadaptChemical/MouseEntered(location,control,params)
|
|
if(hud && hud.mymob && isovermind(hud.mymob))
|
|
name = initial(name)
|
|
desc = initial(desc)
|
|
return ..()
|
|
|
|
/obj/screen/blob/ReadaptChemical/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.chemical_reroll()
|
|
|
|
/obj/screen/blob/RelocateCore
|
|
icon_state = "ui_swap"
|
|
name = "Relocate Core (80)"
|
|
desc = "Swaps a node and your core for 80 resources."
|
|
|
|
/obj/screen/blob/RelocateCore/Click()
|
|
if(isovermind(usr))
|
|
var/mob/camera/blob/B = usr
|
|
B.relocate_core()
|
|
|
|
/obj/screen/blob/Split
|
|
icon_state = "ui_split"
|
|
name = "Split consciousness (100)"
|
|
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))
|
|
var/mob/camera/blob/B = usr
|
|
B.split_consciousness()
|
|
if(B.split_used) // Destroys split proc if the split is succesfully used
|
|
qdel(src)
|
|
|
|
/datum/hud/blob_overmind/New(mob/user)
|
|
..()
|
|
var/obj/screen/using
|
|
|
|
blobpwrdisplay = new /obj/screen()
|
|
blobpwrdisplay.name = "blob power"
|
|
blobpwrdisplay.icon_state = "block"
|
|
blobpwrdisplay.screen_loc = ui_health
|
|
blobpwrdisplay.mouse_opacity = MOUSE_OPACITY_TRANSPARENT
|
|
blobpwrdisplay.layer = ABOVE_HUD_LAYER
|
|
blobpwrdisplay.plane = ABOVE_HUD_PLANE
|
|
static_inventory += blobpwrdisplay
|
|
|
|
blobhealthdisplay = new /obj/screen()
|
|
blobhealthdisplay.name = "blob health"
|
|
blobhealthdisplay.icon_state = "block"
|
|
blobhealthdisplay.screen_loc = ui_internal
|
|
static_inventory += blobhealthdisplay
|
|
|
|
using = new /obj/screen/blob/BlobHelp()
|
|
using.screen_loc = "WEST:6,NORTH:-3"
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/JumpToNode()
|
|
using.screen_loc = ui_inventory
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/JumpToCore()
|
|
using.screen_loc = ui_zonesel
|
|
using.hud = src
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/Blobbernaut()
|
|
using.screen_loc = ui_id
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/StorageBlob()
|
|
using.screen_loc = ui_belt
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/ResourceBlob()
|
|
using.screen_loc = ui_back
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/NodeBlob()
|
|
using.screen_loc = using.screen_loc = ui_rhand
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/FactoryBlob()
|
|
using.screen_loc = using.screen_loc = ui_lhand
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/ReadaptChemical()
|
|
using.screen_loc = ui_storage1
|
|
using.hud = src
|
|
static_inventory += using
|
|
|
|
using = new /obj/screen/blob/RelocateCore()
|
|
using.screen_loc = ui_storage2
|
|
static_inventory += using
|
|
|
|
var/mob/camera/blob/B = user
|
|
if(!B.is_offspring) // Checks if the blob is an offspring, to not create split button if it is
|
|
using = new /obj/screen/blob/Split()
|
|
using.screen_loc = ui_acti
|
|
static_inventory += using
|