Skip to content

Instantly share code, notes, and snippets.

@spacechase0
Created January 9, 2022 05:38
Show Gist options
  • Save spacechase0/abf7972d4b87a6dfc9ba74a9e2ff1a9b to your computer and use it in GitHub Desktop.
Save spacechase0/abf7972d4b87a6dfc9ba74a9e2ff1a9b to your computer and use it in GitHub Desktop.
Fun mobs
{
"Format": "1.24.0",
"Changes": [
{
"Action": "EditData",
"Target": "spacechase0.MonstersTheFramework/Monsters",
"Entries": {
"SpookySkeletonMage": {
"Name": "{{i18n: spooky-skeleton-mage}}",
"CorrespondingMonsterGoal": "Skeleton Mage",
"MaxHealth": 500,
"StartingState": "start",
"States": {
"base": {
"BoundingBoxSize": "48, 48",
"Defense": 10,
"CanReceiveDamageFromPlayer": "Crusader",
"CanReceiveDamageFromBomb": false,
"IncomingDamageMultiplier": 0.5,
"HitSound": "skeletonHit",
"ContactDamage": 40,
"ApplyDebuff": 19,
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton_mage.png",
"FrameSize": "16, 32",
"StartingIndex": 20,
"AnimationLength": 4,
"TicksPerFrame": 10,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnDeath",
"Explosion": 5
},
{
"Event": "OnTick",
"Heal": 1
},
{
"Event": "OnCollision",
"When": "$RANDOM < 0.05",
"Spawn": "SpookySkeleton"
},
{
"Event": "OnTick",
"Variable_healCooldown": "$$healCooldown + 1"
}
]
},
"start": {
"InheritsFrom": "base",
"Events": [
{
"Event": "OnStart",
"Variable_healCooldown": 0,
"State": "turn_random"
}
]
},
"turn_random": {
"InheritsFrom": "base",
"Events": [
{
"Event": "OnStart",
"When": "$RANDOM < 0.25",
"State": "move_up"
},
{
"Event": "OnStart",
"When": "$RANDOM < 0.25",
"State": "move_right"
},
{
"Event": "OnStart",
"When": "$RANDOM < 0.25",
"State": "move_down"
},
{
"Event": "OnStart",
"State": "move_left"
}
]
},
"cast_heal": {
"InheritsFrom": "base",
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton_mage.png",
"FrameSize": "16, 32",
"StartingIndex": 20,
"AnimationLength": 4,
"TicksPerFrame": 10,
"Loops": false,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnAnimationEnd",
"Heal": 100,
"Sound": "healSound",
"State": "turn_random",
"Variable_healCooldown": "0"
}
]
},
"move_base": {
"InheritsFrom": "base",
"Events": [
{
"Event": "OnTick",
"When": "$HEALTH < 400 and $$healCooldown >= 600",
"State": "cast_heal"
}
]
},
"move_up": {
"InheritsFrom": "move_base",
"Movement": {
"Direction": "Fixed",
"Style": "Dash",
"FixedDirection": "0, -1",
"MovementSpeed": 10,
"DashFriction": 0.5
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton_mage.png",
"FrameSize": "16, 32",
"StartingIndex": 8,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "move_down"
}
]
},
"move_right": {
"InheritsFrom": "move_base",
"Movement": {
"Direction": "Fixed",
"Style": "Dash",
"FixedDirection": "1, 0",
"MovementSpeed": 10,
"DashFriction": 0.5
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton_mage.png",
"FrameSize": "16, 32",
"StartingIndex": 4,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "move_left"
}
]
},
"move_down": {
"InheritsFrom": "move_base",
"Movement": {
"Direction": "Fixed",
"Style": "Dash",
"FixedDirection": "0, 1",
"MovementSpeed": 10,
"DashFriction": 0.5
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton_mage.png",
"FrameSize": "16, 32",
"StartingIndex": 0,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "move_up"
}
]
},
"move_left": {
"InheritsFrom": "move_base",
"Movement": {
"Direction": "Fixed",
"Style": "Dash",
"FixedDirection": "-1, 0",
"MovementSpeed": 10,
"DashFriction": 0.5
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton_mage.png",
"FrameSize": "16, 32",
"StartingIndex": 12,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "move_right"
}
]
}
}
},
"SpookySkeleton": {
"Name": "{{i18n: spooky-skeleton}}",
"CorrespondingMonsterGoal": "Skeleton",
"MaxHealth": 100,
"StartingState": "turn_random",
"States": {
"base": {
"BoundingBoxSize": "48, 48",
"CanReceiveDamageFromPlayer": true,
"CanReceiveDamageFromBomb": true,
"IncomingDamageMultiplier": 1.5,
"HitSound": "skeletonHit",
"ContactDamage": 25,
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton.png",
"FrameSize": "16, 32",
"StartingIndex": 20,
"AnimationLength": 4,
"TicksPerFrame": 10,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
}
},
"turn_random": {
"InheritsFrom": "base",
"Events": [
{
"Event": "OnStart",
"When": "$RANDOM < 0.25",
"State": "move_up"
},
{
"Event": "OnStart",
"When": "$RANDOM < 0.33",
"State": "move_right"
},
{
"Event": "OnStart",
"When": "$RANDOM < 0.5",
"State": "move_down"
},
{
"Event": "OnStart",
"State": "move_left"
}
]
},
"move_up": {
"InheritsFrom": "base",
"Movement": {
"Direction": "Fixed",
"Style": "Constant",
"FixedDirection": "0, -1",
"MovementSpeed": 12
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton.png",
"FrameSize": "16, 32",
"StartingIndex": 8,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "turn_random"
}
]
},
"move_right": {
"InheritsFrom": "base",
"Movement": {
"Direction": "Fixed",
"Style": "Constant",
"FixedDirection": "1, 0",
"MovementSpeed": 12
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton.png",
"FrameSize": "16, 32",
"StartingIndex": 4,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "turn_random"
}
]
},
"move_down": {
"InheritsFrom": "base",
"Movement": {
"Direction": "Fixed",
"Style": "Constant",
"FixedDirection": "0, 1",
"MovementSpeed": 12
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton.png",
"FrameSize": "16, 32",
"StartingIndex": 0,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "turn_random"
}
]
},
"move_left": {
"InheritsFrom": "base",
"Movement": {
"Direction": "Fixed",
"Style": "Constant",
"FixedDirection": "-1, 0",
"MovementSpeed": 12
},
"Animation": {
"SpriteSheet": "spacechase0.MonstersTheFramework.Example/assets/spooky_skeleton.png",
"FrameSize": "16, 32",
"StartingIndex": 12,
"AnimationLength": 4,
"TicksPerFrame": 5,
"Origin": "0, 16",
"DeathChunkStartCoordinates": "0, 128"
},
"Events": [
{
"Event": "OnCollision",
"State": "turn_random"
}
]
}
}
}
}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment