Last active
November 28, 2024 18:27
-
-
Save nulleqcodes/4026839e13b20f8d2f850bb7ac0652be to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
---mobdefinition_Wyld Boss--- | |
ID :: bulletdemo | |
Prefab :: colossus | |
Range Behavior :: [[Stationary]] | |
Abilities :: [[Level One]] [[Level Two]] [[Level Three]] [[Level Four]] | |
Bounding Box :: 0 2.73 2.5 3.0 | |
Type :: Boss | |
---ability_Level One--- | |
Bullet Definition :: [[levelone]] | |
VFX Cast :: trigger:Attack* | |
---bulletdef_levelone--- | |
sprite Basic | |
color 3 | |
potency 50 | |
radial bullets:5 speed:3 angle:0 directionType:absolute | |
wait 120 | |
vanish | |
---ability_Level Two--- | |
Bullet Definition :: [[leveltwo]] | |
VFX Cast :: trigger:Attack* | |
---bulletdef_leveltwo--- | |
// ~100 bullets in waves of different colors and patterns | |
sprite Custom_11 | |
color 5 | |
potency 50 | |
// First wave - outward spiral | |
repeat bullets:25 speed:3 angle:0 angleChange:14.4 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Second wave - inward counter-spiral | |
sprite Lance_14 | |
color 2 | |
repeat bullets:25 speed:5 angle:7.2 angleChange:-14.4 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Third wave - crossing pattern | |
sprite Basic | |
color 1 | |
nway speed:6 bullets:25 spread:180 angle:0 directionType:absolute | |
wait 10 | |
nway speed:6 bullets:25 spread:180 angle:90 directionType:absolute | |
---ability_Level Three--- | |
Bullet Definition :: [[levelthree]] | |
VFX Cast :: trigger:Attack* | |
---bulletdef_levelthree--- | |
// ~500 bullets in multiple colorful phases | |
// First phase - expanding rings | |
sprite Custom_10 | |
color 4 | |
potency 50 | |
repeat bullets:4 angleChange:90 angle:0 directionType:absolute | |
fire levelthreering | |
wait 20 | |
// Second phase - spiral swarm | |
sprite Lance_14 | |
color 2 | |
repeat bullets:100 speed:4 angle:0 angleChange:3.6 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Third phase - criss-cross waves | |
sprite Basic | |
color 1 | |
repeat bullets:100 speed:3 angle:0 angleChange:45 delay:2 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Final phase - dense spiral | |
sprite Custom_11 | |
color 5 | |
repeat bullets:100 speed:5 angle:15 angleChange:3.6 directionType:absolute | |
wait 240 | |
vanish | |
---bulletdef_levelthreering--- | |
sprite Basic | |
potency 50 | |
radial bullets:25 speed:3 directionType:absolute angle:0 | |
wait 10 | |
speed 6 | |
wait 240 | |
vanish | |
---ability_Level Four--- | |
Bullet Definition :: [[levelfour]] | |
VFX Cast :: trigger:Attack* | |
---bulletdef_levelfour--- | |
// ~1000 bullets in complex waves | |
// Initial burst | |
sprite Custom_11 | |
color 5 | |
potency 50 | |
radial bullets:100 speed:2 angle:0 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Spiral streams | |
sprite Lance_14 | |
color 2 | |
repeat bullets:200 speed:4 angle:0 angleChange:1.8 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Counter-rotating rings | |
sprite Basic | |
color 3 | |
repeat bullets:100 speed:3 angle:0 angleChange:3.6 directionType:absolute | |
wait 240 | |
vanish | |
repeat bullets:100 speed:3 angle:180 angleChange:-3.6 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Dense crossing waves | |
sprite Custom_10 | |
color 1 | |
repeat bullets:250 speed:5 angle:0 angleChange:45 delay:1 directionType:absolute | |
wait 240 | |
vanish | |
wait 10 | |
// Final spiral burst | |
sprite Custom_7 | |
color 4 | |
repeat bullets:250 speed:6 angle:15 angleChange:1.44 directionType:absolute | |
wait 240 | |
vanish | |
---script_bulletdemo_Monster--- | |
if !isDead { | |
if is_undefined(scriptVars["currentLevel"]) { | |
scriptVars["currentLevel"] = 1 | |
scriptVars["timeSinceAttack"] = 0.0 | |
} | |
scriptVars["timeSinceAttack"] += delta | |
if scriptVars["timeSinceAttack"] >= 8.0 { | |
clearBulletsForEntity(myEntityId) | |
if scriptVars["currentLevel"] == 1 { | |
useAbilityAtPosition(myEntityId, "Level One", entityPosition(myEntityId)) | |
} else if scriptVars["currentLevel"] == 2 { | |
useAbilityAtPosition(myEntityId, "Level Two", entityPosition(myEntityId)) | |
} else if scriptVars["currentLevel"] == 3 { | |
useAbilityAtPosition(myEntityId, "Level Three", entityPosition(myEntityId)) | |
} else if scriptVars["currentLevel"] == 4 { | |
useAbilityAtPosition(myEntityId, "Level Four", entityPosition(myEntityId)) | |
} | |
scriptVars["currentLevel"] += 1 | |
if scriptVars["currentLevel"] > 4 { | |
scriptVars["currentLevel"] = 1 | |
} | |
scriptVars["timeSinceAttack"] = 0.0 | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment