angel killer 115 Posted September 11, 2017 Report Share Posted September 11, 2017 Nothing to special, could use a bit of work, with projectile id's, just copied the Crazy Archaeologist and edited. Easy to modify, just did it quickly as I was testing the area for my own project, but enjoy. package com.vencillio.rs2.entity.mob.impl.wild; import com.vencillio.core.task.Task; import com.vencillio.core.task.TaskQueue; import com.vencillio.core.util.Utility; import com.vencillio.rs2.content.combat.Hit; import com.vencillio.rs2.content.combat.Hit.HitTypes; import com.vencillio.rs2.entity.Entity; import com.vencillio.rs2.entity.Location; import com.vencillio.rs2.entity.Projectile; import com.vencillio.rs2.entity.World; import com.vencillio.rs2.entity.mob.Mob; import com.vencillio.rs2.entity.player.Player; /** * Handles the Deranged Archaeologist boss * @author Bojack * You'll have to find the Co-ord yourself. */ public class Deranged Archaeologist extends Mob { public Deranged Archaeologist() { super(7806, true, new Location(-, -, 0)); } private String[] messages = { "Round and round and round and round!", "The plants! They're alive!", "They came from the ground! They came from the ground!!!", "The doors won't stay closed forever!", "They're cheering! Why are they cheering?", "Time is running out! She will rise again!", }; private final String specialMessage = "Learn to Read!"; private final String deathMessage = "Ow!"; private boolean usingSpecial = false; @Override public void onHit(Entity entity, Hit hit) { if (entity != null && !entity.isNpc()) { int random = Utility.random(10); if (random == 1) { usingSpecial = true; getUpdateFlags().sendForceMessage(specialMessage); special(entity.getPlayer()); } else if (!isDead() || !usingSpecial) { getUpdateFlags().sendForceMessage(Utility.randomElement(messages)); } } } @Override public void onDeath() { getUpdateFlags().sendForceMessage(deathMessage); } public void special(Player player) { for (int i = 0; i < 3; i++) { int offsetX = player.getX() - getX(); int offsetY = player.getY() - getY(); if (i == 0 || i == 2) { offsetX += i == 0 ? -1 : 1; offsetY++; } Location end = new Location(getX() + offsetX, getY() + offsetY, 0); World.sendProjectile(new Projectile(551, 1, 10, 100, 65, 10, 20), getLocation(), -1, (byte) offsetX, (byte) offsetY); World.sendStillGraphic(659, 100, end); TaskQueue.queue(new Task(player, 3, false) { @Override public void execute() { stop(); } @Override public void onStop() { if (player.getLocation().equals(end)) { int damage = Utility.random(15) + Utility.random(15) + 12; if (damage > 53) { damage = 53; } player.hit(new Hit(damage, HitTypes.MAGIC)); usingSpecial = false; } } }); } } } 2 Link to comment Share on other sites More sharing options...
acesucks 1,316 Posted September 12, 2017 Report Share Posted September 12, 2017 Good job! 1 Link to comment Share on other sites More sharing options...
angel killer 115 Posted September 12, 2017 Author Report Share Posted September 12, 2017 9 hours ago, Paul said: Good job! Thanks bud! Link to comment Share on other sites More sharing options...
smiles down 2 Posted September 13, 2017 Report Share Posted September 13, 2017 Oh sh*t sweet, less work for me! testing now. 1 Link to comment Share on other sites More sharing options...
hahahahah 2 Posted September 20, 2017 Report Share Posted September 20, 2017 THANK YOU 1 Link to comment Share on other sites More sharing options...
kennstro 1 Posted December 19, 2018 Report Share Posted December 19, 2018 Good job! Link to comment Share on other sites More sharing options...
2t bank 0 Posted June 2, 2019 Report Share Posted June 2, 2019 Nice Link to comment Share on other sites More sharing options...
Maulage 0 Posted March 11, 2020 Report Share Posted March 11, 2020 Thanks a lot for this tutorial. Link to comment Share on other sites More sharing options...
zeziro 1 Posted April 28, 2020 Report Share Posted April 28, 2020 thanks for this bro ill try it out Link to comment Share on other sites More sharing options...
Farsken 0 Posted February 7, 2022 Report Share Posted February 7, 2022 Awesome! Link to comment Share on other sites More sharing options...
Adarsh 0 Posted February 7, 2022 Report Share Posted February 7, 2022 nice one thanks Link to comment Share on other sites More sharing options...
Who Cares1 0 Posted February 8, 2022 Report Share Posted February 8, 2022 ty Link to comment Share on other sites More sharing options...
Ary3x 0 Posted February 14, 2022 Report Share Posted February 14, 2022 Great job! Link to comment Share on other sites More sharing options...
khonqr 0 Posted April 14, 2022 Report Share Posted April 14, 2022 bump Link to comment Share on other sites More sharing options...
katastrophic 0 Posted February 27, 2023 Report Share Posted February 27, 2023 ty Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now