Skip to content

Commit

Permalink
Ohshit
Browse files Browse the repository at this point in the history
  • Loading branch information
TDcoolguy300 committed Sep 21, 2016
1 parent da5b4bf commit b06fe3d
Show file tree
Hide file tree
Showing 2 changed files with 87 additions and 0 deletions.
9 changes: 9 additions & 0 deletions code/__HELPERS/matrices.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,15 @@
//doesn't have an object argument because this is "Stacking" with the animate call above
//3 billion% intentional

/proc/animate_shockwave(var/atom/A)
if (!istype(A))
return
var/punchstr = rand(10, 20)
var/original_y = A.pixel_y
animate(A, transform = matrix(punchstr, MATRIX_ROTATE), pixel_y = 16, time = 2, color = "#eeeeee", easing = BOUNCE_EASING)
animate(transform = matrix(-punchstr, MATRIX_ROTATE), pixel_y = original_y, time = 2, color = "#ffffff", easing = BOUNCE_EASING)
animate(transform = null, time = 3, easing = BOUNCE_EASING)
return

//Dumps the matrix data in format a-f
/matrix/proc/tolist()
Expand Down
78 changes: 78 additions & 0 deletions code/modules/bossstuff.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
/*
Information:
State 0 = INACTIVE
State 1 = ACTIVE
State 2 = ACTIVE, PHASE 2
State 3 = ACTIVE, PHASE 3
State 4 = DEAD
*/
//I KNOW ITS A OBJECT, I DONT WANT PLAYERS CONTROLLING IT
/area/BossArena
name = "Boss Arena"

/obj/boss/crystal
name = "Strange statue"
desc = "What"
var/state = 0 //State of the boss, used for things, Start at 0
bound_width = 96
bound_height = 96
var/health = 2000 //temp value, will adjust for amount of players in the Arena
var/list/opponents = null // I SEE ALL
var/list/fists = null // Start null, catalog fists on New()


/obj/boss/crystal/New()
var/area/A = get_area()
if(!istype(A,/area/BossArena))
qdel(src) //Don't fucking SPAWN THIS OUTSIDE THE ARENA REEEEEEEEEEEE

/obj/boss/crystal/attacked_by(obj/item/I, mob/living/user)
if(!(I.force > 5) || I.damtype == STAMINA)
user << "<span class='warning'>The [I.name] does no damage!</span>"
else
take_damage(I.force,I.damtype)



/obj/boss/crystal/proc/take_damage(var/damage, var/damtype) //Do damage calculations
if(damtype == STAMINA)
return //Immune to Stamina damage you fucks
health = health - damage


/obj/boss/crystal/bullet_act(var/obj/item/projectile/Proj)
take_damage(Proj.damage,Proj.damage_type)

/obj/boss/crystal/proc/activate() //This turns on the boss, who knew?
START_PROCESSING(SSobj, src)
state = 1 //I HAVE AWOKEN, MORTALS


/obj/stonefist
name = "large stone hand"
desc = "A large hand, made of stone."
bound_width = 64
bound_height = 32
icon = 'icons/obj/items.dmi'
icon_state = "latexballon"

/obj/stonefist/proc/smashdown()
//Play animation
var/list/turfs1 = circlerange(src,2)
var/list/turfs2 = circlerange(src,3)
turfs2 =- turfs1
turfs1 =- get_turf(src)
var/list/turfs3 = circlerange(src,4)
turfs3 =- turfs2
world << "FUCK"
for(var/turf/T in turfs1)
animate_shockwave(T)
spawn(2)
for(var/turf/T in turfs2)
animate_shockwave(T)
world << "FUCK2"
spawn(2)
for(var/turf/T in turfs3)
animate_shockwave(T)
world << "FUCK3"

0 comments on commit b06fe3d

Please sign in to comment.