Skip to content

Commit

Permalink
feat: Warden and Hoglin Posses (#1037)
Browse files Browse the repository at this point in the history
* New Possession 2

* Possessed Warden

* Possessed Hoglin

* Some smithing templetes from possessed mobs

* Big Nerf wither skull drop

* Mushrooms are cows

* Very small fix

* Semi-revert the nerf
  • Loading branch information
Eqis-Edu authored and klikli-dev committed Jan 21, 2024
1 parent df8e941 commit 23fce09
Show file tree
Hide file tree
Showing 35 changed files with 695 additions and 27 deletions.
33 changes: 28 additions & 5 deletions src/generated/resources/assets/occultism/lang/en_us.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"parent": "occultism:item/ritual_dummy"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"parent": "occultism:item/ritual_dummy"
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,27 @@
}
],
"rolls": 1.0
},
{
"bonus_rolls": 0.0,
"entries": [
{
"type": "minecraft:item",
"functions": [
{
"add": false,
"count": {
"type": "minecraft:uniform",
"max": 1.0,
"min": 0.1
},
"function": "minecraft:set_count"
}
],
"name": "minecraft:eye_armor_trim_smithing_template"
}
],
"rolls": 1.0
}
],
"random_sequence": "occultism:entities/possessed_enderman"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@
"count": {
"type": "minecraft:uniform",
"max": 1.0,
"min": 1.0
"min": 0.67
},
"function": "minecraft:set_count"
},
Expand All @@ -92,6 +92,32 @@
}
],
"rolls": 1.0
},
{
"bonus_rolls": 0.0,
"conditions": [
{
"condition": "minecraft:killed_by_player"
}
],
"entries": [
{
"type": "minecraft:item",
"name": "minecraft:rib_armor_trim_smithing_template"
}
],
"functions": [
{
"add": false,
"count": {
"type": "minecraft:uniform",
"max": 1.0,
"min": 0.1
},
"function": "minecraft:set_count"
}
],
"rolls": 1.0
}
],
"random_sequence": "occultism:entities/wild_hunt_wither_skeleton"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
"background_u_index": 0,
"background_v_index": 0,
"category": "occultism:possession_rituals",
"condition": {
"type": "modonomicon:true"
},
"description": "",
"hide_while_locked": false,
"icon": {
"item": "minecraft:netherite_upgrade_smithing_template"
},
"name": "book.occultism.dictionary_of_spirits.possession_rituals.possess_hoglin.name",
"pages": [
{
"type": "modonomicon:entity",
"anchor": "",
"default_rotation": -45.0,
"entity_id": "occultism:possessed_hoglin",
"name": "",
"offset": 0.0,
"rotate": true,
"scale": 0.7,
"text": "book.occultism.dictionary_of_spirits.possession_rituals.possess_hoglin.entity.text"
},
{
"type": "occultism:ritual_recipe",
"anchor": "",
"recipe_id_1": "occultism:ritual/possess_hoglin",
"text": "",
"title1": "",
"title2": ""
},
{
"type": "modonomicon:text",
"anchor": "",
"show_title_separator": true,
"text": "book.occultism.dictionary_of_spirits.possession_rituals.possess_hoglin.description.text",
"title": "",
"use_markdown_in_title": false
}
],
"parents": [
{
"draw_arrow": true,
"entry": "occultism:possession_rituals/overview",
"line_enabled": true,
"line_reversed": false
}
],
"x": 4,
"y": 1
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
"background_u_index": 0,
"background_v_index": 0,
"category": "occultism:possession_rituals",
"condition": {
"type": "modonomicon:true"
},
"description": "",
"hide_while_locked": false,
"icon": {
"item": "minecraft:echo_shard"
},
"name": "book.occultism.dictionary_of_spirits.possession_rituals.possess_warden.name",
"pages": [
{
"type": "modonomicon:entity",
"anchor": "",
"default_rotation": -45.0,
"entity_id": "occultism:possessed_warden",
"name": "",
"offset": 0.0,
"rotate": true,
"scale": 1.0,
"text": "book.occultism.dictionary_of_spirits.possession_rituals.possess_warden.entity.text"
},
{
"type": "occultism:ritual_recipe",
"anchor": "",
"recipe_id_1": "occultism:ritual/possess_warden",
"text": "",
"title1": "",
"title2": ""
},
{
"type": "modonomicon:text",
"anchor": "",
"show_title_separator": true,
"text": "book.occultism.dictionary_of_spirits.possession_rituals.possess_warden.description.text",
"title": "",
"use_markdown_in_title": false
}
],
"parents": [
{
"draw_arrow": true,
"entry": "occultism:possession_rituals/overview",
"line_enabled": true,
"line_reversed": false
}
],
"x": 4,
"y": -1
}
2 changes: 2 additions & 0 deletions src/main/java/com/klikli_dev/occultism/Occultism.java
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,8 @@ private void onEntityAttributeCreation(final EntityAttributeCreationEvent event)
event.put(OccultismEntities.POSSESSED_WEAK_SHULKER_TYPE.get(), PossessedWeakShulkerEntity.createAttributes().build());
event.put(OccultismEntities.POSSESSED_SHULKER_TYPE.get(), PossessedShulkerEntity.createAttributes().build());
event.put(OccultismEntities.POSSESSED_ELDER_GUARDIAN_TYPE.get(), PossessedElderGuardianEntity.createAttributes().build());
event.put(OccultismEntities.POSSESSED_WARDEN_TYPE.get(), PossessedWardenEntity.createAttributes().build());
event.put(OccultismEntities.POSSESSED_HOGLIN_TYPE.get(), PossessedHoglinEntity.createAttributes().build());
event.put(OccultismEntities.WILD_HUNT_SKELETON_TYPE.get(), WildHuntSkeletonEntity.createAttributes().build());
event.put(OccultismEntities.WILD_HUNT_WITHER_SKELETON_TYPE.get(), WildHuntWitherSkeletonEntity.createAttributes().build());
event.put(OccultismEntities.OTHERWORLD_BIRD_TYPE.get(), OtherworldBirdEntity.createAttributes().build());
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*
* MIT License
*
* Copyright 2020 klikli-dev
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
* of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial
* portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT
* OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/

package com.klikli_dev.occultism.common.entity.possessed;

import net.minecraft.world.entity.EntityType;
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.entity.monster.hoglin.Hoglin;
import net.minecraft.world.level.Level;

public class PossessedHoglinEntity extends Hoglin {

public PossessedHoglinEntity(EntityType<? extends Hoglin> type,
Level worldIn) {
super(type, worldIn);
}

//region Static Methods
public static AttributeSupplier.Builder createAttributes() {
return Hoglin.createAttributes()
.add(Attributes.ATTACK_DAMAGE, 12.0)
.add(Attributes.MAX_HEALTH, 66.0);
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
/*
* MIT License
*
* Copyright 2020 klikli-dev
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
* associated documentation files (the "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
* of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial
* portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT
* OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/

package com.klikli_dev.occultism.common.entity.possessed;

import net.minecraft.world.entity.EntityType;
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.entity.monster.warden.Warden;
import net.minecraft.world.level.Level;

public class PossessedWardenEntity extends Warden {

public PossessedWardenEntity(EntityType<? extends Warden> type,
Level worldIn) {
super(type, worldIn);
}

//region Static Methods
public static AttributeSupplier.Builder createAttributes() {
return Warden.createAttributes()
.add(Attributes.ATTACK_DAMAGE, 15.0)
.add(Attributes.MAX_HEALTH, 250.0)
.add(Attributes.MOVEMENT_SPEED, 0.6F)
.add(Attributes.ATTACK_KNOCKBACK, 0.5);
}

@Override
protected boolean shouldDespawnInPeaceful() {
return false;
}
}
Loading

0 comments on commit 23fce09

Please sign in to comment.