diff --git a/src/main/resources/assets/terraoriginum/lang/en_us.json b/src/main/resources/assets/terraoriginum/lang/en_us.json index 63c7bed..64cd946 100644 --- a/src/main/resources/assets/terraoriginum/lang/en_us.json +++ b/src/main/resources/assets/terraoriginum/lang/en_us.json @@ -161,6 +161,30 @@ "power.terraoriginum.yulde-powers/last_stand.name": "Last Stand", "power.terraoriginum.yulde-powers/last_stand.description": "You gain strength 4 and speed 2 for 60 seconds, after which you will, without fail, die.", + //-----florian-----// + "origin.terraoriginum.florian.name": "Florian", + "origin.terraoriginum.florian.description": "Florians are soft-hearted creatures of nature. They rarely pose a threat and stand as keepers of the natural environment.", + "power.terraoriginum.florian-powers/absorbing.name": "Absorbing", + "power.terraoriginum.florian-powers/absorbing.description": "You gain strength when in contact with water.", + "power.terraoriginum.florian-powers/flammable.name": "Flammable", + "power.terraoriginum.florian-powers/flammable.description": "You take twice as much damage from fire", + "power.terraoriginum.florian-powers/photosynthesis.name": "Photosynthesis", + "power.terraoriginum.florian-powers/photosynthesis.description": "You are satiated when in the sun.", + "power.terraoriginum.florian-powers/pocket_sand.name": "Pocket Sand", + "power.terraoriginum.florian-powers/pocket_sand.description": "As a protective measure, you keep sand in your pocket to temporarily blind an attacker", + "power.terraoriginum.florian-powers/aura_of_growth.name": "Growth Aura", + "power.terraoriginum.florian-powers/aura_of_growth.description": "Crops around you grow at a faster rate.", + "power.terraoriginum.florian-powers/bonemeal.name": "Bonemeal Body", + "power.terraoriginum.florian-powers/bonemeal.description": "When hit, you spread bonemeal into your surrounding area.", + "power.terraoriginum.florian-powers/compost.name": "Compostable", + "power.terraoriginum.florian-powers/compost.description": "When you're in a composter, it gradually fills up", + "power.terraoriginum.florian-powers/green_fingered.name": "Green Fingered", + "power.terraoriginum.florian-powers/green_fingered.description": "Your skin has a slightly green hue to it", + "power.terraoriginum.florian-powers/small.name": "Small", + "power.terraoriginum.florian-powers/small.description": "You are quite small and have 5 hearts because of it.", + "power.terraoriginum.florian-powers/weak.name": "Weak", + "power.terraoriginum.florian-powers/weak.description": "Because you are a creature of nature, you cannot do much damage.", + "death.attack.terraoriginum:last_stand": "%1$s made their last stand.", "death.attack.terraoriginum:last_stand.player": "%1$s made their last stand before dying to %2$s." diff --git a/src/main/resources/data/origins/origin_layers/origin.json b/src/main/resources/data/origins/origin_layers/origin.json index 74f45d9..c5ee5ad 100644 --- a/src/main/resources/data/origins/origin_layers/origin.json +++ b/src/main/resources/data/origins/origin_layers/origin.json @@ -11,6 +11,7 @@ "terraoriginum:lato", "terraoriginum:kitsune", "terraoriginum:yulde", + "terraoriginum:florian", { "condition": { "type": "origins:equipped_item", diff --git a/src/main/resources/data/terraoriginum/origins/florian.json b/src/main/resources/data/terraoriginum/origins/florian.json new file mode 100644 index 0000000..34d6ff9 --- /dev/null +++ b/src/main/resources/data/terraoriginum/origins/florian.json @@ -0,0 +1,21 @@ +{ + "powers": [ + "terraoriginum:florian-powers/green_fingered", + "terraoriginum:florian-powers/small", + "terraoriginum:florian-powers/small_width", + "terraoriginum:florian-powers/small_hitbox", + "terraoriginum:florian-powers/small_width_hitbox", + "terraoriginum:florian-powers/flammable", + "terraoriginum:florian-powers/photosynthesis", + "terraoriginum:florian-powers/absorbing", + "terraoriginum:florian-powers/compost", + "terraoriginum:florian-powers/bonemeal", + "terraoriginum:florian-powers/aura_of_growth", + "terraoriginum:florian-powers/pocket_sand", + "terraoriginum:florian-powers/weak", + "terraoriginum:florian-powers/five_hearts" + ], + "icon": "minecraft:rose_bush", + "order": 1000, + "impact": 3 +} diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/absorbing.json b/src/main/resources/data/terraoriginum/powers/florian-powers/absorbing.json new file mode 100644 index 0000000..05f2773 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/absorbing.json @@ -0,0 +1,26 @@ +{ + "type": "origins:stacking_status_effect", + "condition": { + "type": "origins:or", + "conditions": [ + { + "type": "origins:fluid_height", + "fluid": "minecraft:water", + "comparison": ">", + "compare_to": 0.0 + }, + { + "type": "origins:in_rain" + } + ] + }, + "min_stacks": 0, + "max_stacks": 1, + "duration_per_stack": 30, + "effect": { + "effect": "minecraft:strength", + "is_ambient": true, + "show_particles": false, + "show_icon": true + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/aura_of_growth.json b/src/main/resources/data/terraoriginum/powers/florian-powers/aura_of_growth.json new file mode 100644 index 0000000..e242ff6 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/aura_of_growth.json @@ -0,0 +1,26 @@ +{ + "type": "origins:action_over_time", + "interval": 1, + "entity_action": { + "type": "origins:block_action_at", + "block_action": { + "type": "origins:area_of_effect", + "radius": 7, + "shape": "cube", + "block_condition": { + "type": "origins:block_state", + "property": "age" + }, + "block_action": { + "type": "origins:chance", + "chance": 0.005, + "action": { + "type": "origins:modify_block_state", + "property": "age", + "operation": "add", + "change": 1 + } + } + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/bonemeal.json b/src/main/resources/data/terraoriginum/powers/florian-powers/bonemeal.json new file mode 100644 index 0000000..3d6a687 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/bonemeal.json @@ -0,0 +1,22 @@ +{ + "type": "origins:action_when_damage_taken", + "entity_action": { + "type": "origins:and", + "actions": [ + { + "type": "origins:block_action_at", + "block_action": { + "type": "origins:area_of_effect", + "radius": 8, + "shape": "sphere", + "block_action": { + "type": "origins:bonemeal", + "effects": true + } + } + + } + ] + }, + "cooldown": 1 +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/compost.json b/src/main/resources/data/terraoriginum/powers/florian-powers/compost.json new file mode 100644 index 0000000..9e1a49a --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/compost.json @@ -0,0 +1,87 @@ +{ + "type": "origins:action_over_time", + "interval": 20, + "entity_action": + { + "type": "origins:and", + "actions": [ + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter unless block ~ ~ ~ minecraft:composter[level=7] unless block ~ ~ ~ minecraft:composter[level=8] run particle minecraft:composter ~ ~.5 ~ .2 .3 .2 1 10" + }, + { + "type": "origins:choice", + "actions": [ + { + "weight": 50, + "element": + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter unless block ~ ~ ~ minecraft:composter[level=7] unless block ~ ~ ~ minecraft:composter[level=8] run playsound minecraft:block.composter.fill block @a[distance=..10] ~ ~ ~ 1 1" + } + }, + { + "weight": 50, + "element": + { + "type": "origins:and", + "actions": [ + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter unless block ~ ~ ~ minecraft:composter[level=7] unless block ~ ~ ~ minecraft:composter[level=8] run playsound minecraft:block.composter.fill_success block @a[distance=..10] ~ ~ ~ 1 1" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter[level=6] run setblock ~ ~ ~ minecraft:composter[level=7] replace" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter[level=5] run setblock ~ ~ ~ minecraft:composter[level=6] replace" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter[level=4] run setblock ~ ~ ~ minecraft:composter[level=5] replace" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter[level=3] run setblock ~ ~ ~ minecraft:composter[level=4] replace" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter[level=2] run setblock ~ ~ ~ minecraft:composter[level=3] replace" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter[level=1] run setblock ~ ~ ~ minecraft:composter[level=2] replace" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter[level=0] run setblock ~ ~ ~ minecraft:composter[level=1] replace" + } + ] + } + } + ] + } + ] + }, + "condition": + { + "type": "origins:command", + "inverted": false, + "comparison": "==", + "compare_to": 1, + "permission_level": 4, + "command": "execute if block ~ ~ ~ minecraft:composter unless block ~ ~ ~ minecraft:composter[level=7] unless block ~ ~ ~ minecraft:composter[level=8]" + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/five_hearts.json b/src/main/resources/data/terraoriginum/powers/florian-powers/five_hearts.json new file mode 100755 index 0000000..f8b3eac --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/five_hearts.json @@ -0,0 +1,9 @@ +{ + "type": "origins:attribute", + "modifier": { + "attribute": "minecraft:generic.max_health", + "value": -10.0, + "operation": "addition" + }, + "hidden": true +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/flammable.json b/src/main/resources/data/terraoriginum/powers/florian-powers/flammable.json new file mode 100644 index 0000000..f1f86f9 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/flammable.json @@ -0,0 +1,11 @@ +{ + "type": "origins:modify_damage_taken", + "damage_condition": { + "type": "origins:fire" + }, + "modifier": { + "name": "Origin modifier", + "operation": "multiply_base", + "value": 1 + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/green_fingered.json b/src/main/resources/data/terraoriginum/powers/florian-powers/green_fingered.json new file mode 100644 index 0000000..8f57e91 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/green_fingered.json @@ -0,0 +1,7 @@ +{ + "type": "origins:model_color", + "red": 0.8, + "blue": 0.8, + "green": 1, + "alpha": 1 +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/photosynthesis.json b/src/main/resources/data/terraoriginum/powers/florian-powers/photosynthesis.json new file mode 100644 index 0000000..78df087 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/photosynthesis.json @@ -0,0 +1,87 @@ +{ + "type": "origins:multiple", + "regenerate_food": { + "type": "origins:action_over_time", + "condition": { + "type": "origins:and", + "conditions": [ + { + "type": "origins:daytime" + }, + { + "type": "origins:exposed_to_sky" + }, + { + "type": "origins:or", + "conditions": [ + { + "type": "origins:food_level", + "comparison": "<", + "compare_to": 20 + }, + { + "type": "origins:saturation_level", + "comparison": "<", + "compare_to": 20 + } + ] + } + ] + }, + "interval": 20, + "entity_action": { + "type": "origins:feed", + "food": 1, + "saturation": 1 + } + }, + "prevent_healing": { + "type": "origins:disable_regen" + }, + "natural_regeneration": { + "type": "origins:action_over_time", + "condition": { + "type": "origins:and", + "conditions": [ + { + "type": "origins:relative_health", + "comparison": "<", + "compare_to": 1 + }, + { + "type": "origins:food_level", + "comparison": ">", + "compare_to": 0 + } + ] + }, + "interval": 40, + "entity_action": { + "type": "origins:heal", + "amount": 1 + } + }, + "natural_regeneration_exhaustion": { + "type": "origins:action_over_time", + "condition": { + "type": "origins:and", + "conditions": [ + { + "type": "origins:relative_health", + "comparison": "<", + "compare_to": 1 + }, + { + "type": "origins:food_level", + "comparison": ">", + "compare_to": 0 + } + ] + }, + "interval": 40, + "entity_action": { + "type": "origins:exhaust", + "amount": 2 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/pocket_sand.json b/src/main/resources/data/terraoriginum/powers/florian-powers/pocket_sand.json new file mode 100644 index 0000000..2375504 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/pocket_sand.json @@ -0,0 +1,37 @@ +{ + "type": "origins:active_self", + "cooldown": 200, + "key": + { + "key": "key.origins.primary_active", + "continuous": false + }, + "hud_render": + { + "should_render": true, + "sprite_location": "origins:textures/gui/community/huang/resource_bar_01.png", + "bar_index": 13 + }, + "entity_action": + { + "type": "origins:and", + "actions": + [ + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute anchored eyes positioned ^ ^ ^2 run effect give @e[distance=..2] minecraft:blindness 10 0 false" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute anchored eyes positioned ^ ^ ^2 run particle minecraft:falling_dust minecraft:sand ~ ~ ~ .5 .5 .5 0 100 normal" + }, + { + "type": "origins:execute_command", + "permission_level": 4, + "command": "execute anchored eyes positioned ^ ^ ^2 run playsound minecraft:block.sand.place player @a[distance=..32] ~ ~ ~ 1 1" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/small.json b/src/main/resources/data/terraoriginum/powers/florian-powers/small.json new file mode 100644 index 0000000..c7f80f5 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/small.json @@ -0,0 +1,8 @@ +{ + "type": "origins:action_over_time", + "interval": 20, + "entity_action": { + "type": "origins:execute_command", + "command": "/scale set pehkui:height 0.625" + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/small_hitbox.json b/src/main/resources/data/terraoriginum/powers/florian-powers/small_hitbox.json new file mode 100644 index 0000000..722b79d --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/small_hitbox.json @@ -0,0 +1,9 @@ +{ + "hidden": true, + "type": "origins:action_over_time", + "interval": 20, + "entity_action": { + "type": "origins:execute_command", + "command": "/scale set pehkui:hitbox_height 1" + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/small_width.json b/src/main/resources/data/terraoriginum/powers/florian-powers/small_width.json new file mode 100644 index 0000000..72af2be --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/small_width.json @@ -0,0 +1,9 @@ +{ + "type": "origins:action_over_time", + "interval": 20, + "hidden": true, + "entity_action": { + "type": "origins:execute_command", + "command": "/scale set pehkui:width 0.625" + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/small_width_hitbox.json b/src/main/resources/data/terraoriginum/powers/florian-powers/small_width_hitbox.json new file mode 100644 index 0000000..df0e9f0 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/small_width_hitbox.json @@ -0,0 +1,9 @@ +{ + "type": "origins:action_over_time", + "interval": 20, + "hidden": true, + "entity_action": { + "type": "origins:execute_command", + "command": "/scale set pehkui:hitbox_width 1" + } +} \ No newline at end of file diff --git a/src/main/resources/data/terraoriginum/powers/florian-powers/weak.json b/src/main/resources/data/terraoriginum/powers/florian-powers/weak.json new file mode 100644 index 0000000..c1c4077 --- /dev/null +++ b/src/main/resources/data/terraoriginum/powers/florian-powers/weak.json @@ -0,0 +1,17 @@ +{ + "type": "origins:modify_damage_dealt", + "condition": { + "type": "origins:in_block_anywhere", + "block_condition": { + "type": "origins:block", + "block": "minecraft:water" + }, + "comparison": "<=", + "compare_to": 1 + }, + "modifier": { + "name": "less damage when not submerged", + "operation": "multiply_total", + "value": 0.2 + } +} \ No newline at end of file