General minigame overhaul#134
Conversation
# Conflicts: # pom.xml
| /* | ||
| * Village Defense - Protect villagers from hordes of zombies | ||
| * Copyright (c) 2022 Plugily Projects - maintained by Tigerpanzer_02 and contributors | ||
| * Copyright (C) 2022 Plugily Projects - maintained by 2Wild4You, Tigerpanzer_02 and contributors |
| /* | ||
| * Village Defense - Protect villagers from hordes of zombies | ||
| * Copyright (c) 2022 Plugily Projects - maintained by Tigerpanzer_02 and contributors | ||
| * Copyright (C) 2022 Plugily Projects - maintained by 2Wild4You, Tigerpanzer_02 and contributors |
| getMessageManager().registerMessage("KIT_CONTENT_MEDIC_GAME_ITEM_HOMECOMING_RESPAWNED_BY_TITLE", new Message("Kit.Content.Medic.Game-Item.Homecoming.Respawned-By-Title", "")); | ||
| getMessageManager().registerMessage("KIT_CONTENT_MEDIC_GAME_ITEM_HOMECOMING_RESPAWNED_BY_SUBTITLE", new Message("Kit.Content.Medic.Game-Item.Homecoming.Respawned-By-Subtitle", "")); |
There was a problem hiding this comment.
title and subtitle can be made into one line with timings, check https://github.com/Plugily-Projects/MiniGamesBox/blob/development/MiniGamesBox%20Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/PluginArenaManager.java#L112 (TitleBuilder)
| /* | ||
| * Village Defense - Protect villagers from hordes of zombies | ||
| * Copyright (c) 2022 Plugily Projects - maintained by Tigerpanzer_02 and contributors | ||
| * Copyright (C) 2022 Plugily Projects - maintained by 2Wild4You, Tigerpanzer_02 and contributors |
| /* | ||
| * Village Defense - Protect villagers from hordes of zombies | ||
| * Copyright (c) 2022 Plugily Projects - maintained by Tigerpanzer_02 and contributors | ||
| * Copyright (C) 2022 Plugily Projects - maintained by 2Wild4You, Tigerpanzer_02 and contributors |
src/main/java/plugily/projects/villagedefense/kits/premium/WizardKit.java
Outdated
Show resolved
Hide resolved
src/main/java/plugily/projects/villagedefense/kits/premium/WizardKit.java
Outdated
Show resolved
Hide resolved
| VersionUtils.sendParticles("TOWN_AURA", null, loc, 5, 0, 0, 0); | ||
| for(Entity en : loc.getChunk().getEntities()) { | ||
| if(!(CreatureUtils.isEnemy(en)) || en.getLocation().distance(loc) >= 1.5 || en.equals(player)) { | ||
| for (Entity en : loc.getChunk().getEntities()) { |
|
|
||
| private void applyMagicAttack(Player player) { | ||
| private void applyMagicAttack(User user) { | ||
| XParticle.drawLine(user.getPlayer(), 40, 1, ParticleDisplay.of(XParticle.getParticle("FLAME"))); |
| //wand damage: 30/32/35 scaling % of entity's max health, we use direct health set to override armors etc. | ||
| entity.damage(0, user.getPlayer()); | ||
| double maxHealthPercent = getWandPercentageDamage(arena); | ||
| entity.setHealth(Math.max(0, entity.getHealth() - (entity.getAttribute(Attribute.GENERIC_MAX_HEALTH).getValue() / 100.0) * maxHealthPercent)); |
There was a problem hiding this comment.
Use VersionUtil getMaxHealth Attributes will cause issues on direct call for legacy versions
Tigerpanzer02
left a comment
There was a problem hiding this comment.
notice we need to check if that versioncheck will already be enough for 1.8
pom.xml
Outdated
| <changelogFile>${project.basedir}/CHANGELOG.md</changelogFile> | ||
| </configuration> | ||
| </plugin> | ||
|
|
| getMessageManager().registerMessage("KIT_CONTENT_MEDIC_GAME_ITEM_HOMECOMING_RESPAWNED_BY_TITLE", new Message("Kit.Content.Medic.Game-Item.Homecoming.Respawned-By-Title", "")); | ||
| getMessageManager().registerMessage("KIT_CONTENT_MEDIC_GAME_ITEM_HOMECOMING_RESPAWNED_BY_SUBTITLE", new Message("Kit.Content.Medic.Game-Item.Homecoming.Respawned-By-Subtitle", "")); |
There was a problem hiding this comment.
its possible to use the newly added TitleBuilder from MinigamesBox which let you combine both in one.
e.g.
new TitleBuilder("TITLE").asKey().arena(arena).player(player).sendPlayer();
Title: "20,30,20;%arena_name%;%arena_players_size%/%arena_max_players%"
src/main/java/plugily/projects/villagedefense/kits/premium/TornadoKit.java
Outdated
Show resolved
Hide resolved
|
todo: abilities registry |
|
todo: let each kit register messages for game on their own, not in main class |
|
todo: percentage damage utils to reduce 3 lines into 1 line utility, it will definitely be used across multiple kits |
|
will finish it someday definitely |
hopefully next week xD ;) |
|
todo: Revamp final defense (entity upgrade for golem), it's too weak, reference here: Slow 1 for every alive zombie for 0.25 seconds Damage of 0.25 heart for every zombie alive It is definitely too weak. |
# Conflicts: # src/main/java/plugily/projects/villagedefense/Main.java
# Conflicts: # build.gradle.kts
On wave refresh players are now partially healed (25% max health) and villagers are healed a bit as well
|
|








This pull request includes updates for Wizard, Medic and Tornado (not fully completed) kits as well as Entity Upgrades system (mostly messages).
Pardon any other changes such as old copyright updates and others.
Please review each file changed carefully.