mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-19 02:54:41 +01:00
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into turfs
# Conflicts: # icons/obj/vending.dmi # paradise.dme
This commit is contained in:
@@ -18,7 +18,6 @@ var/list/sting_paths
|
||||
var/dat = create_menu(changeling)
|
||||
usr << browse(dat, "window=powers;size=600x700")//900x480
|
||||
|
||||
|
||||
/datum/action/changeling/evolution_menu/proc/create_menu(var/datum/changeling/changeling)
|
||||
var/dat
|
||||
dat +="<html><head><title>Changeling Evolution Menu</title></head>"
|
||||
@@ -298,12 +297,10 @@ var/list/sting_paths
|
||||
/////
|
||||
|
||||
/datum/changeling/proc/purchasePower(var/mob/living/carbon/user, var/sting_name)
|
||||
|
||||
var/datum/action/changeling/thepower = null
|
||||
var/list/all_powers = init_subtypes(/datum/action/changeling)
|
||||
|
||||
if(!sting_paths)
|
||||
sting_paths = init_subtypes(/datum/action/changeling)
|
||||
for(var/datum/action/changeling/cling_sting in sting_paths)
|
||||
for(var/datum/action/changeling/cling_sting in all_powers)
|
||||
if(cling_sting.name == sting_name)
|
||||
thepower = cling_sting
|
||||
|
||||
@@ -344,21 +341,19 @@ var/list/sting_paths
|
||||
to_chat(user, "<span class='notice'>We have removed our evolutions from this form, and are now ready to readapt.</span>")
|
||||
user.remove_changeling_powers(1)
|
||||
canrespec = 0
|
||||
user.make_changeling()
|
||||
user.make_changeling(FALSE)
|
||||
return 1
|
||||
else
|
||||
to_chat(user, "<span class='danger'>You lack the power to readapt your evolutions!</span>")
|
||||
return 0
|
||||
|
||||
/mob/proc/make_changeling()
|
||||
/mob/proc/make_changeling(var/get_free_powers = TRUE)
|
||||
if(!mind)
|
||||
return
|
||||
if(!ishuman(src))
|
||||
return
|
||||
if(!mind.changeling)
|
||||
mind.changeling = new /datum/changeling(gender)
|
||||
if(!sting_paths)
|
||||
sting_paths = init_subtypes(/datum/action/changeling)
|
||||
if(mind.changeling.purchasedpowers)
|
||||
remove_changeling_powers(1)
|
||||
|
||||
@@ -367,13 +362,23 @@ var/list/sting_paths
|
||||
for(var/language in languages)
|
||||
mind.changeling.absorbed_languages |= language
|
||||
|
||||
// purchase free powers.
|
||||
for(var/datum/action/changeling/path in sting_paths)
|
||||
//var/datum/action/changeling/S = new path()
|
||||
if(!path.dna_cost)
|
||||
if(!mind.changeling.has_sting(path))
|
||||
mind.changeling.purchasedpowers += path
|
||||
path.on_purchase(src)
|
||||
if(get_free_powers)
|
||||
var/list/all_powers = init_subtypes(/datum/action/changeling)
|
||||
for(var/datum/action/changeling/path in all_powers) // purchase free powers.
|
||||
if(!path.dna_cost)
|
||||
if(!mind.changeling.has_sting(path))
|
||||
mind.changeling.purchasedpowers += path
|
||||
path.on_purchase(src)
|
||||
else //for respec
|
||||
var/datum/action/changeling/hivemind_upload/S1 = new
|
||||
if(!mind.changeling.has_sting(S1))
|
||||
mind.changeling.purchasedpowers+=S1
|
||||
S1.Grant(src)
|
||||
|
||||
var/datum/action/changeling/hivemind_download/S2 = new
|
||||
if(!mind.changeling.has_sting(S2))
|
||||
mind.changeling.purchasedpowers+=S2
|
||||
S2.Grant(src)
|
||||
|
||||
var/mob/living/carbon/C = src //only carbons have dna now, so we have to typecaste
|
||||
mind.changeling.absorbed_dna |= C.dna.Clone()
|
||||
|
||||
@@ -473,7 +473,6 @@
|
||||
flags_inv = HIDEJUMPSUIT
|
||||
cold_protection = 0
|
||||
heat_protection = 0
|
||||
species_fit = null
|
||||
sprite_sheets = null
|
||||
|
||||
/obj/item/clothing/suit/armor/changeling/New()
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
var/datum/icon_snapshot/disguise
|
||||
var/stealth_armor = list(melee = 15, bullet = 15, laser = 15, energy = 15, bomb = 15, bio = 15, rad = 15)
|
||||
var/combat_armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 50, rad = 50)
|
||||
species_fit = null
|
||||
sprite_sheets = null
|
||||
|
||||
/obj/item/clothing/suit/armor/abductor/vest/proc/toggle_nodrop()
|
||||
|
||||
Reference in New Issue
Block a user