Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,4 +134,8 @@ Not found your language or want to maintain translations? Feel free to translate
Feimos
Avacuoss

Assets & Special Thanks:

Calamity Mod Team - for amazing sound design inspiration and sound assets.
Tyro.net - https://tools.wwwtyro.net/space-3d/index.html Space background in Codex

7 changes: 0 additions & 7 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -232,13 +232,6 @@ task noSounds(type: Jar) {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}

task noVoice(type: Jar) {
archiveClassifier.set('novoice')
from sourceSets.main.output
exclude("assets/valoria/sounds/voice/**")
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}

task noMusicJar(type: Jar) {
archiveClassifier.set('nomusic')
from sourceSets.main.output
Expand Down
40 changes: 21 additions & 19 deletions src/main/java/com/idark/valoria/Events.java
Original file line number Diff line number Diff line change
Expand Up @@ -207,25 +207,27 @@ public static void onTooltip(ItemTooltipEvent event){
}
}

int foodRot = ValoriaUtils.getCurrentNBTValue("ValoriaRot", stack);
if(foodRot > 0) {
String stageKey;
ChatFormatting color;

if (foodRot >= 60) {
stageKey = "tooltip.valoria.stage.rotting";
color = ChatFormatting.RED;
} else if (foodRot >= 30) {
stageKey = "tooltip.valoria.stage.stale";
color = ChatFormatting.YELLOW;
} else {
stageKey = "tooltip.valoria.stage.fresh";
color = ChatFormatting.GREEN;
}

var status = Component.translatable(stageKey).withStyle(color);
var line = Component.translatable("tooltip.valoria.rot_status", status, foodRot).withStyle(ChatFormatting.GRAY);
tooltip.add(1, line);
if(stack.hasTag() && stack.getTag().contains("ValoriaRot")){
int foodRot = ValoriaUtils.getCurrentNBTValue("ValoriaRot", stack);
if(foodRot > 0){
String stageKey;
ChatFormatting color;

if(foodRot >= 60){
stageKey = "tooltip.valoria.stage.rotting";
color = ChatFormatting.RED;
}else if(foodRot >= 30){
stageKey = "tooltip.valoria.stage.stale";
color = ChatFormatting.YELLOW;
}else{
stageKey = "tooltip.valoria.stage.fresh";
color = ChatFormatting.GREEN;
}

var status = Component.translatable(stageKey).withStyle(color);
var line = Component.translatable("tooltip.valoria.rot_status", status, foodRot).withStyle(ChatFormatting.GRAY);
tooltip.add(1, line);
}
}
}

Expand Down
47 changes: 26 additions & 21 deletions src/main/java/com/idark/valoria/Valoria.java
Original file line number Diff line number Diff line change
Expand Up @@ -232,27 +232,25 @@ public static void registerCaps(RegisterCapabilitiesEvent event){
}

@SubscribeEvent
public static void commonSetup(FMLCommonSetupEvent event){
event.enqueueWork(() -> {
SpawnPlacements.register(EntityTypeRegistry.GOBLIN.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Goblin::checkGoblinSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.DRAUGR.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, DraugrEntity::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.SWAMP_WANDERER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, SwampWandererEntity::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.SCOURGE.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, ScourgeEntity::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.SHADEWOOD_SPIDER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, ShadewoodSpider::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.DEVIL.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Devil::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.HAUNTED_MERCHANT.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, HauntedMerchant::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.TROLL.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Troll::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.CORRUPTED_TROLL.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Troll::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.SORCERER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, SorcererEntity::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.ENT.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Ent::checkEntSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.NATURE_GOLEM.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, NatureGolem::checkSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.RIVER_GOLEM.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, RiverGolem::checkSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.MAGGOT.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, MaggotEntity::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.CORRUPTED.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Corrupted::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.KING_CRAB.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, KingCrabEntity::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.WICKED_SCORPION.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, WickedScorpion::checkMonsterSpawnRules);
SpawnPlacements.register(EntityTypeRegistry.SCAVENGER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Scavenger::checkAnimalSpawnRules);
});
public static void onPlacementRegistry(SpawnPlacementRegisterEvent event){
event.register(EntityTypeRegistry.GOBLIN.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Goblin::checkGoblinSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.DRAUGR.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, DraugrEntity::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.SWAMP_WANDERER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, SwampWandererEntity::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.SCOURGE.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, ScourgeEntity::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.SHADEWOOD_SPIDER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, ShadewoodSpider::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.DEVIL.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Devil::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.HAUNTED_MERCHANT.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, HauntedMerchant::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.TROLL.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Troll::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.CORRUPTED_TROLL.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Troll::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.SORCERER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, SorcererEntity::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.ENT.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Ent::checkEntSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.NATURE_GOLEM.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, NatureGolem::checkMobSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.RIVER_GOLEM.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, RiverGolem::checkMobSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.MAGGOT.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, MaggotEntity::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.CORRUPTED.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Corrupted::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.KING_CRAB.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, KingCrabEntity::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.WICKED_SCORPION.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, WickedScorpion::checkMonsterSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
event.register(EntityTypeRegistry.SCAVENGER.get(), SpawnPlacements.Type.ON_GROUND, Types.MOTION_BLOCKING_NO_LEAVES, Scavenger::checkAnimalSpawnRules, SpawnPlacementRegisterEvent.Operation.OR);
}

@SubscribeEvent
Expand Down Expand Up @@ -321,10 +319,12 @@ public static void attachAttribute(EntityAttributeModificationEvent event){
event.add(EntityTypeRegistry.WICKED_CRYSTAL.get(), AttributeReg.ELEMENTAL_RESISTANCE.get(), 15);
event.add(EntityTypeRegistry.DRYADOR.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -25);
event.add(EntityTypeRegistry.DRYADOR.get(), AttributeReg.NATURE_RESISTANCE.get(), 50);
event.add(EntityTypeRegistry.DRYADOR.get(), AttributeReg.NATURE_DAMAGE.get(), 2);
event.add(EntityTypeRegistry.NECROMANCER.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -25);
event.add(EntityTypeRegistry.NECROMANCER.get(), AttributeReg.NIHILITY_RESISTANCE.get(), 15);
event.add(EntityTypeRegistry.DEVIL.get(), AttributeReg.DEPTH_RESISTANCE.get(), -15);
event.add(EntityTypeRegistry.DEVIL.get(), AttributeReg.INFERNAL_RESISTANCE.get(), 25);
event.add(EntityTypeRegistry.DEVIL.get(), AttributeReg.INFERNAL_DAMAGE.get(), 2);
event.add(EntityTypeRegistry.SHADEWOOD_SPIDER.get(), AttributeReg.NATURE_RESISTANCE.get(), 15);
event.add(EntityTypeRegistry.SHADEWOOD_SPIDER.get(), AttributeReg.NIHILITY_RESISTANCE.get(), 25);
event.add(EntityTypeRegistry.SHADEWOOD_SPIDER.get(), AttributeReg.NIHILITY_DAMAGE.get(), 1);
Expand All @@ -336,11 +336,13 @@ public static void attachAttribute(EntityAttributeModificationEvent event){
event.add(EntityTypeRegistry.CORRUPTED_TROLL.get(), AttributeReg.NIHILITY_RESISTANCE.get(), 35);
event.add(EntityTypeRegistry.CORRUPTED_TROLL.get(), AttributeReg.NIHILITY_DAMAGE.get(), 3);
event.add(EntityTypeRegistry.ENT.get(), AttributeReg.NATURE_RESISTANCE.get(), 35);
event.add(EntityTypeRegistry.ENT.get(), AttributeReg.NATURE_DAMAGE.get(), 2);
event.add(EntityTypeRegistry.ENT.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -25);
event.add(EntityTypeRegistry.NATURE_GOLEM.get(), AttributeReg.NATURE_RESISTANCE.get(), 50);
event.add(EntityTypeRegistry.NATURE_GOLEM.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -15);
event.add(EntityTypeRegistry.RIVER_GOLEM.get(), AttributeReg.NATURE_RESISTANCE.get(), 15);
event.add(EntityTypeRegistry.RIVER_GOLEM.get(), AttributeReg.DEPTH_RESISTANCE.get(), 50);
event.add(EntityTypeRegistry.RIVER_GOLEM.get(), AttributeReg.DEPTH_DAMAGE.get(), 2);
event.add(EntityTypeRegistry.RIVER_GOLEM.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -65);
event.add(EntityTypeRegistry.SORCERER.get(), AttributeReg.ELEMENTAL_RESISTANCE.get(), 25);
event.add(EntityTypeRegistry.CORRUPTED.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -45);
Expand All @@ -355,11 +357,14 @@ public static void attachAttribute(EntityAttributeModificationEvent event){
event.add(EntityTypeRegistry.UNDEAD.get(), AttributeReg.NIHILITY_RESISTANCE.get(), -25);
event.add(EntityTypeRegistry.SCOURGE.get(), AttributeReg.NIHILITY_RESISTANCE.get(), -25);
event.add(EntityTypeRegistry.SCOURGE.get(), AttributeReg.DEPTH_RESISTANCE.get(), 25);
event.add(EntityTypeRegistry.SCOURGE.get(), AttributeReg.DEPTH_DAMAGE.get(), 2);
event.add(EntityTypeRegistry.SWAMP_WANDERER.get(), AttributeReg.NIHILITY_RESISTANCE.get(), -25);
event.add(EntityTypeRegistry.SWAMP_WANDERER.get(), AttributeReg.DEPTH_RESISTANCE.get(), 25);
event.add(EntityTypeRegistry.SWAMP_WANDERER.get(), AttributeReg.DEPTH_DAMAGE.get(), 2);
event.add(EntityTypeRegistry.DRAUGR.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -15);
event.add(EntityTypeRegistry.KING_CRAB.get(), AttributeReg.INFERNAL_RESISTANCE.get(), -25);
event.add(EntityTypeRegistry.KING_CRAB.get(), AttributeReg.DEPTH_RESISTANCE.get(), 50);
event.add(EntityTypeRegistry.KING_CRAB.get(), AttributeReg.DEPTH_DAMAGE.get(), 2);

event.add(EntityType.DROWNED, AttributeReg.DEPTH_RESISTANCE.get(), 25);
event.add(EntityType.DROWNED, AttributeReg.INFERNAL_RESISTANCE.get(), -25);
Expand Down
Loading
Loading