Merges AI Branch into Master

This commit is contained in:
Atermonera
2018-11-30 21:05:42 -08:00
committed by VirgoBot
parent 15017e893e
commit 2df5e9fe0e
379 changed files with 22460 additions and 4751 deletions

View File

@@ -15,7 +15,7 @@
var/spore_cooldown = 8 SECONDS
/obj/structure/blob/factory/Destroy()
for(var/mob/living/simple_animal/hostile/blob/spore/spore in spores)
for(var/mob/living/simple_mob/blob/spore/spore in spores)
if(istype(spore) && spore.factory == src)
spore.factory = null
else
@@ -31,7 +31,7 @@
return
flick("blob_factory_glow", src)
spore_delay = world.time + spore_cooldown
var/mob/living/simple_animal/hostile/blob/spore/S = null
var/mob/living/simple_mob/blob/spore/S = null
if(overmind)
S = new overmind.blob_type.spore_type(src.loc, src)
S.faction = "blob"
@@ -39,10 +39,8 @@
S.overmind = overmind
overmind.blob_mobs.Add(S)
if(overmind.blob_type.ranged_spores)
S.ranged = TRUE
S.projectiletype = overmind.blob_type.spore_projectile
S.projectilesound = overmind.blob_type.spore_firesound
S.shoot_range = overmind.blob_type.spore_range
else //Other mobs don't add themselves in New. Ew.
S.nest = src
spores += S

View File

@@ -53,7 +53,7 @@ var/list/overminds = list()
B.update_icon() //reset anything that was ours
for(var/BLO in blob_mobs)
var/mob/living/simple_animal/hostile/blob/BM = BLO
var/mob/living/simple_mob/blob/spore/BM = BLO
if(BM)
BM.overmind = null
BM.update_icons()

View File

@@ -32,7 +32,7 @@
var/can_build_resources = FALSE // Ditto, for resource blobs.
var/can_build_nodes = TRUE // Ditto, for nodes.
var/spore_type = /mob/living/simple_animal/hostile/blob/spore
var/spore_type = /mob/living/simple_mob/blob/spore
var/ranged_spores = FALSE // For proper spores of the type above.
var/spore_firesound = 'sound/effects/slime_squish.ogg'
var/spore_range = 7 // The range the spore can fire.
@@ -72,7 +72,7 @@
return
// Spore things
/datum/blob_type/proc/on_spore_death(mob/living/simple_animal/hostile/blob/spore/S)
/datum/blob_type/proc/on_spore_death(mob/living/simple_mob/blob/spore/S)
return
@@ -120,7 +120,7 @@
brute_multiplier = 0.25
burn_multiplier = 0.6
ai_aggressiveness = 50 //Really doesn't like you near it.
spore_type = /mob/living/simple_animal/hostile/hivebot/swarm
spore_type = /mob/living/simple_mob/mechanical/hivebot/swarm
/datum/blob_type/fabrication_swarm/on_received_damage(var/obj/structure/blob/B, damage, damage_type, mob/living/attacker)
if(istype(B, /obj/structure/blob/normal))
@@ -227,9 +227,9 @@
burn_multiplier = 3
ai_aggressiveness = 40
can_build_factories = TRUE
spore_type = /mob/living/simple_animal/hostile/blob/spore/infesting
spore_type = /mob/living/simple_mob/blob/spore/infesting
/datum/blob_type/fungal_bloom/on_spore_death(mob/living/simple_animal/hostile/blob/spore/S)
/datum/blob_type/fungal_bloom/on_spore_death(mob/living/simple_mob/blob/spore/S)
if(S.is_infesting)
return // Don't make blobs if they were on someone's head.
var/turf/T = get_turf(S)
@@ -258,11 +258,11 @@
brute_multiplier = 1.5
ai_aggressiveness = 30 // The spores do most of the fighting.
can_build_factories = TRUE
spore_type = /mob/living/simple_animal/hostile/blob/spore/weak
spore_type = /mob/living/simple_mob/blob/spore/weak
/datum/blob_type/fulminant_organism/on_expand(var/obj/structure/blob/B, var/obj/structure/blob/new_B, var/turf/T, var/mob/observer/blob/O)
if(prob(10)) // 10% chance to make a weak spore when expanding.
var/mob/living/simple_animal/hostile/blob/S = new spore_type(T)
var/mob/living/simple_mob/blob/spore/S = new spore_type(T)
if(istype(S))
S.overmind = O
O.blob_mobs.Add(S)
@@ -272,7 +272,7 @@
/datum/blob_type/fulminant_organism/on_death(obj/structure/blob/B)
if(prob(33)) // 33% chance to make a spore when dying.
var/mob/living/simple_animal/hostile/blob/S = new spore_type(get_turf(B))
var/mob/living/simple_mob/blob/spore/S = new spore_type(get_turf(B))
B.visible_message("<span class='danger'>\The [S] floats free from the [name]!</span>")
if(istype(S))
S.overmind = B.overmind
@@ -614,7 +614,7 @@
attack_verb = "crashes against"
can_build_factories = TRUE
can_build_resources = TRUE
spore_type = /mob/living/simple_animal/hostile/blob/spore/weak
spore_type = /mob/living/simple_mob/blob/spore/weak
ranged_spores = TRUE
spore_range = 3
spore_projectile = /obj/item/projectile/energy/blob/splattering