Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package twcore.bots.rustbot.rustrpg;
- import java.util.Random;
- import twcore.bots.rustbot.RPGPlayer.RPGPlayer;
- import twcore.bots.rustbot.rpgArmor.rpgArmor;
- import twcore.bots.rustbot.rpgArmor.rpgArmorOps;
- import twcore.bots.rustbot.rpgMap.rpgMapOps;
- import twcore.bots.rustbot.rpgMob.rpgMob;
- import twcore.bots.rustbot.rpgMob.rpgMobOps;
- import twcore.bots.rustbot.rpgWeapon.rpgWeapon;
- import twcore.bots.rustbot.rpgWeapon.rpgWeaponOps;
- import twcore.core.SubspaceBot;
- public class rpgEventOps {
- /*+------------------------------------------------------------------+
- *
- * Needed VARS and CLASSES
- *
- *+------------------------------------------------------------------+ */
- SubspaceBot bot;
- rpgMapOps rpgm;
- rpgWeaponOps rpgw;
- rpgMobOps rpgmb;
- rpgArmorOps rpga;
- public rpgEventOps(SubspaceBot Bot)
- {
- this.bot = Bot;
- rpgw = new rpgWeaponOps(bot);
- rpgm = new rpgMapOps(bot);
- rpgmb = new rpgMobOps(bot);
- rpga = new rpgArmorOps(bot);
- }
- Random ran = new Random();
- /*+------------------------------------------------------------------+
- *
- * Event Methods
- *
- *+------------------------------------------------------------------+ */
- //Rolls dice, Creates a bag of 30 ints that are all randomed by min and max value selected and chooses one from the bag
- public int rpg_DiceRoll(int minValue, int maxValue)
- {
- int[] intbag = new int[30];
- for (int i = 0; i < 30; i++)
- {
- intbag[i] = ran.nextInt(maxValue - minValue + 1) + minValue;
- }
- return intbag[ran.nextInt(30)];
- }
- public void createItemsAndMap()
- {
- //Creates Weapon
- rpgw.AutoWepCreate();
- //Creates Maps
- rpgm.MapCreate();
- //Creates Mobs
- rpgmb.AutoMobCreate();
- //Creates Armor
- rpga.AutoArmCreate();
- }
- public void expCheck(RPGPlayer Player)
- {
- if (Player.getExperience() > 100 * Player.getLevel())
- {
- Player.setLevel(Player.getLevel() + 1);
- Player.setHealth(100 + 15 * Player.getLevel());
- Player.setExperience(0);
- bot.ba.sendChatMessage(1,"|LEVEL| - "+Player.getPlayerName()+" has leveled up to level "+Player.getLevel()+"!");
- }
- }
- public void hpCheck(RPGPlayer Player)
- {
- if (Player.getHealth() <= 0)
- {
- Player.setWeapon("Fists");
- Player.setWeaponAttack(1);
- Player.setMapIndex(4);
- Player.setLevel(1);
- Player.setDeaths(Player.getDeaths() + 1);
- Player.setHealth(100);
- String PMap = rpgm.grabRPGMap(Player.getMapIndex());
- bot.ba.sendChatMessage(1,"|DEATH| - "+Player.getPlayerName()+" has died and spawned at "+PMap+"!" );
- }
- }
- public void hpRegen(RPGPlayer Player)
- {
- if (Player.getHealth() > 0 && Player.getHealth() < 100 + 15 * Player.getLevel() - 15)
- {
- Player.setHealth(Player.getHealth() + 5 + 1 * Player.getLevel());
- }
- }
- /*+------------------------------------------------------------------+
- *
- * Command Methods
- *
- *+------------------------------------------------------------------+ */
- public String fill(int length, String with) {
- StringBuilder sb = new StringBuilder(length);
- while (sb.length() < length) {
- sb.append(with);
- }
- return sb.toString();
- }
- public String pad(String value, int length) {
- return pad(value, length, " ");
- }
- public String pad(String value, int length, String with) {
- StringBuilder result = new StringBuilder(length);
- // Pre-fill a String value
- result.append(fill(Math.max(0, length - value.length()), with));
- result.append(value);
- return result.toString();
- }
- public String fill(String value, int length, String with) {
- StringBuilder result = new StringBuilder(length);
- result.append(value);
- result.append(fill(Math.max(0, length - value.length()), with));
- return result.toString();
- }
- public void meCommand(RPGPlayer sender)
- { //9 //36 //72
- bot.ba.sendPrivateMessage(sender.getPlayerName(),"<-----------------------------<[ -[STATS]- ]>----------------------------->");
- bot.ba.sendPrivateMessage(sender.getPlayerName(),"<] Player : "+fill(sender.getPlayerName(),25," ")+" | Level: "+fill(Integer.toString(sender.getLevel()),27," ")+"[>");
- bot.ba.sendPrivateMessage(sender.getPlayerName(),"<] Weapon : "+fill(sender.getWeapon(),25," ")+" | Attack : "+fill(Integer.toString(sender.getWeaponAttack()),25," ")+"[>");
- bot.ba.sendPrivateMessage(sender.getPlayerName(),"<] Armor : "+fill(sender.getArmor(),26," ")+" | Defense : "+fill(Integer.toString(sender.getArmorDefense()),24," ")+"[>");
- bot.ba.sendPrivateMessage(sender.getPlayerName(),"<] Kills : "+fill(Integer.toString(sender.getKills()),11," ")+" | Deaths : "+fill(Integer.toString(sender.getDeaths()),11," ")+" | Experience : "+fill(Integer.toString(sender.getExperience())+"/"+Integer.toString(100 * sender.getLevel()),13," ")+"[>");
- bot.ba.sendPrivateMessage(sender.getPlayerName(),"<] Health : "+fill(Integer.toString(sender.getHealth())+"/"+Integer.toString(100+15*sender.getLevel()-15),16," ")+" | Location : "+fill(rpgm.grabRPGMap(sender.getMapIndex()),32," ")+"[>");
- bot.ba.sendPrivateMessage(sender.getPlayerName(),"<------------------------------<[ -[RPG]- ]>------------------------------>");
- }
- public void mapCommand(String sender)
- {
- bot.ba.sendPrivateMessage(sender, "<------------------------------<[ -[MAP]- ]>---+");
- bot.ba.sendPrivateMessage(sender, "<] "+rpgm.grabRPGMap(0)+"<>"+rpgm.grabRPGMap(1)+"<>"+rpgm.grabRPGMap(2)+"<>"
- +rpgm.grabRPGMap(3)+"<>[Safe]"+rpgm.grabRPGMap(4)+"[Safe]<>"+rpgm.grabRPGMap(5)+"<>"+rpgm.grabRPGMap(6)
- +"<>"+rpgm.grabRPGMap(7)+"<>"+rpgm.grabRPGMap(8));
- bot.ba.sendPrivateMessage(sender, "<------------------------------<[ -[MAP]- ]>---+");
- }
- public void helpCommand(String sender)
- {
- String[] help = {
- "+-- RPG Commands ---------------------------------------------------------------------------.",
- "| !rpg register - Registers to play the rpg game |",
- "| !rpg me - Shows rpg character info |",
- "| !rpg map - Shows map list in order |",
- "| !rpg help - Shows this helo menu |",
- "| !rpg list - Shows a list of players on rpg (online players) |",
- };
- String[] op = {
- "+-- RPG OP Commands ------------------------------------------------------------------------+",
- "| !rpg on - Turns off RPG |",
- "| !rpg off - Turns on RPG |",
- };
- String end = "`-------------------------------------------------------------------------------------------'";
- bot.ba.smartPrivateMessageSpam(sender, help);
- if (bot.ba.getOperatorList().isSysop(sender))
- {
- bot.ba.smartPrivateMessageSpam(sender, op);
- }
- bot.ba.sendPrivateMessage(sender, end);
- }
- /*+------------------------------------------------------------------+
- *
- * Events
- *
- *+------------------------------------------------------------------+ */
- //Selects Move event from MapOps Class
- public void rpg_MovePlayer(RPGPlayer Player)
- {
- rpgm.MovePlayer(Player); //Moves player
- String PMap = rpgm.grabRPGMap(Player.getMapIndex()); //Grabs map from list
- bot.ba.sendChatMessage(1, "|MOVE| - "+Player.getPlayerName()+" has moved to "+PMap+"!");
- }
- public void rpg_ItemDrop(RPGPlayer Player)
- {
- //Grabs random Weapon
- rpgWeapon rw = rpgw.RandomWeapon();
- //Grabs random Armor
- rpgArmor ra = rpga.RandomArmor();
- //Grabs Player Map
- String PMap = rpgm.grabRPGMap(Player.getMapIndex());
- //Armor or Weapon Dice
- int itemdice = rpg_DiceRoll(0,100);
- int itemchance = rpg_DiceRoll(0,100);
- //If Player is not in town and item dice is for Weapon Drop and Player weapon attack is less than random weapon attack
- if (Player.getMapIndex() != 4 && itemdice > 50 && itemchance > 50 && Player.getWeaponAttack() < rw.getWeaponAttack())
- {
- bot.ba.sendChatMessage(1,"|ITEM| - "+Player.getPlayerName()+" found a chest with "+rw.getWeaponName()+" [ "+rw.getWeaponAttack()+" Attack ] inside of it at "+PMap+"!");
- Player.setWeapon(rw.getWeaponName());
- Player.setWeaponAttack(rw.getWeaponAttack());
- }
- //Item dice is for Armor Drop and Player ARmor is less than random armor defense
- if (Player.getMapIndex() != 4 && itemdice < 50 && itemchance > 50 && Player.getArmorDefense() < ra.getArmorDefense())
- {
- bot.ba.sendChatMessage(1, "|ITEM| - "+Player.getPlayerName()+" found a chest with "+ra.getArmor()+" [ "+ra.getArmorDefense()+" Defense ] inside of it at "+PMap+"!");
- Player.setArmor(ra.getArmor());
- Player.setArmorDefense(ra.getArmorDefense());
- }
- //If Player Armor Defense is less than Random Armor Defense and Player Weapon attack is less than Random Weapon Attack
- //and if Item dice is = 50
- if (Player.getMapIndex() != 4 && itemdice == 50 && Player.getArmorDefense() < ra.getArmorDefense() && Player.getWeaponAttack() < rw.getWeaponAttack())
- {
- bot.ba.sendChatMessage(1,"|ITEM| - "+Player.getPlayerName()+" found a chest with "+rw.getWeaponName()+" [ "+rw.getWeaponAttack()+" Attack ] and "
- +ra.getArmor()+" [ "+ra.getArmorDefense()+" Defense ] inside of it at "+PMap+"!");
- Player.setWeapon(rw.getWeaponName());
- Player.setWeaponAttack(rw.getWeaponAttack());
- Player.setArmor(ra.getArmor());
- Player.setArmorDefense(ra.getArmorDefense());
- }
- if (Player.getMapIndex() != 4 && itemchance < 50 && Player.getArmorDefense() >= ra.getArmorDefense() && Player.getWeaponAttack() >= rw.getWeaponAttack())
- bot.ba.sendChatMessage(1,"|ITEM| - "+Player.getPlayerName()+" found a chest with nothing inside at "+PMap+"!");
- hpRegen(Player);
- }
- public void rpg_PlayerDuel(RPGPlayer Player,RPGPlayer EPlayer)
- {
- String PMap = rpgm.grabRPGMap(Player.getMapIndex());
- int crit = rpg_DiceRoll(0,5);
- int ecrit = rpg_DiceRoll(0,5);
- int duelmath = (Player.getWeaponAttack() - EPlayer.getArmorDefense()) + Player.getLevel() + crit - (EPlayer.getWeaponAttack() - Player.getArmorDefense()) + EPlayer.getLevel() + ecrit;
- int stealdice = rpg_DiceRoll(0,100);
- int stealtype = rpg_DiceRoll(0,100);
- int duelchance = rpg_DiceRoll(0,100);
- if (Player.getMapIndex() != 4 && EPlayer.getMapIndex() != 4 && duelchance > 50)
- {
- if (duelmath > 0)
- {
- bot.ba.sendChatMessage(1, "|DUEL| - "+Player.getPlayerName()+" injured "+EPlayer.getPlayerName()+" with his "+Player.getWeapon()+" [ "+Player.getWeaponAttack()+" Attack ] at "+PMap+"!");
- if (Player.getWeaponAttack() < EPlayer.getWeaponAttack() && stealdice > 50 && stealtype >= 50)
- {
- bot.ba.sendChatMessage(1,"|DUEL| - "+Player.getPlayerName()+" stole "+EPlayer.getPlayerName()+"s "+EPlayer.getWeapon()+" [ "+EPlayer.getWeaponAttack()+" Attack ] !");
- Player.setWeapon(EPlayer.getWeapon());
- Player.setWeaponAttack(EPlayer.getWeaponAttack());
- EPlayer.setWeapon("Fists");
- EPlayer.setWeaponAttack(1);
- }
- if (Player.getArmorDefense() < EPlayer.getArmorDefense() && stealdice > 50 && stealtype < 50)
- {
- bot.ba.sendChatMessage(1,"|DUEL| - "+Player.getPlayerName()+" stole "+EPlayer.getPlayerName()+"s "+EPlayer.getArmor()+" [ "+EPlayer.getArmorDefense()+" Defense ] !");
- Player.setArmor(EPlayer.getArmor());
- Player.setArmorDefense(EPlayer.getArmorDefense());
- EPlayer.setArmor("Naked");
- EPlayer.setArmorDefense(1);
- }
- bot.ba.sendChatMessage(1,"|DUEL STAT| - ["+duelmath+"]");
- EPlayer.setHealth(EPlayer.getHealth() - duelmath);
- if (EPlayer.getHealth() <= 0)
- Player.setKills(Player.getKills() + 1);
- hpCheck(EPlayer);
- Player.setExperience(Player.getExperience() + 10);
- expCheck(Player);
- hpRegen(Player);
- }
- if (duelmath < 0)
- {
- bot.ba.sendChatMessage(1, "|DUEL| - "+Player.getPlayerName()+" tried to kill "+EPlayer.getPlayerName()+" and got injured by "+EPlayer.getPlayerName()+"s "+EPlayer.getWeapon()+" [ "+EPlayer.getWeaponAttack()+" Attack ] at "+PMap+"!");
- if (EPlayer.getWeaponAttack() < Player.getWeaponAttack() && stealdice > 50 && stealtype >= 50)
- {
- bot.ba.sendChatMessage(1,"|DUEL| - "+EPlayer.getPlayerName()+" stole "+Player.getPlayerName()+"s "+Player.getWeapon()+" [ "+Player.getWeaponAttack()+" Attack ] !");
- EPlayer.setWeapon(Player.getWeapon());
- EPlayer.setWeaponAttack(Player.getWeaponAttack());
- Player.setWeapon("Fists");
- Player.setWeaponAttack(1);
- }
- if (EPlayer.getArmorDefense() < Player.getArmorDefense() && stealdice > 50 && stealtype < 50)
- {
- bot.ba.sendChatMessage(1,"|DUEL| - "+EPlayer.getPlayerName()+" stole "+Player.getPlayerName()+"s "+Player.getArmor()+" [ "+Player.getArmorDefense()+" Defense ] !");
- EPlayer.setArmor(Player.getArmor());
- EPlayer.setArmorDefense(Player.getArmorDefense());
- Player.setArmor("Naked");
- Player.setArmorDefense(1);
- }
- bot.ba.sendChatMessage(1,"|DUEL STAT| - ["+duelmath+"]");
- Player.setHealth(Player.getHealth() - duelmath + duelmath *2);
- if (Player.getHealth() <= 0)
- EPlayer.setKills(EPlayer.getKills() + 1);
- hpCheck(Player);
- EPlayer.setExperience(EPlayer.getExperience() + 10);
- expCheck(EPlayer);
- hpRegen(EPlayer);
- }
- if (duelmath == 0)
- {
- bot.ba.sendChatMessage(1,"|DUEL| - "+Player.getPlayerName()+" attacked "+EPlayer.getPlayerName()+" but unfortunately they both got injured and fled at "+PMap+"!");
- EPlayer.setExperience(EPlayer.getExperience() - 10);
- Player.setExperience(Player.getExperience() - 10);
- }
- }
- else
- {
- return;
- }
- }
- public void rpg_MobEncounter(RPGPlayer Player)
- {
- rpgMob mob = rpgmb.grabRandomMob();
- String PMap = rpgm.grabRPGMap(Player.getMapIndex());
- int crit = rpg_DiceRoll(0,5);
- int mcrit = rpg_DiceRoll(0,5);
- int duelmath = (Player.getWeaponAttack() - mob.getMobDefense()) + Player.getLevel() + crit - (mob.getMobAttack() + Player.getLevel() - Player.getArmorDefense()) + mcrit;
- if (duelmath > 0 && Player.getMapIndex() != 4)
- {
- bot.ba.sendChatMessage(1, "|MOB| - "+Player.getPlayerName()+" has defeated "+mob.getMobName()+" with his "+Player.getWeapon()+" [ "+Player.getWeaponAttack()+" Attack ] at "+PMap+"!");
- bot.ba.sendChatMessage(1,"|BATTLE STATS| - ["+duelmath+"]");
- Player.setExperience(Player.getExperience() + 5);
- expCheck(Player);
- hpRegen(Player);
- }
- if (duelmath < 0 && Player.getMapIndex() != 4)
- {
- bot.ba.sendChatMessage(1, "|MOB| - "+Player.getPlayerName()+" was injured by "+mob.getMobName()+" at "+PMap+"!");
- bot.ba.sendChatMessage(1,"|BATTLE STATS| - ["+duelmath+"]");
- Player.setHealth(Player.getHealth() - duelmath + duelmath *2);
- hpCheck(Player);
- }
- if (duelmath == 0 && Player.getMapIndex() != 4)
- {
- bot.ba.sendChatMessage(1, "|MOB| - "+Player.getPlayerName()+" encountered "+mob.getMobName()+" and has fled for his life!");
- Player.setExperience(Player.getExperience() - 5);
- hpRegen(Player);
- }
- }
- public void rpg_Luck(RPGPlayer Player)
- {
- int luckdice = rpg_DiceRoll(0,100);
- int rexp = rpg_DiceRoll(0,50);
- int diedice = rpg_DiceRoll(0,100);
- String PMap = rpgm.grabRPGMap(Player.getMapIndex());
- if (luckdice > 50)
- {
- bot.ba.sendChatMessage(1, "|LUCK| - The seven Gods have blessed "+Player.getPlayerName()+" with "+rexp+" experience points!");
- Player.setExperience(Player.getExperience() + rexp);
- hpRegen(Player);
- }
- if (luckdice < 50)
- {
- bot.ba.sendChatMessage(1, "|LUCK| - The seven Gods have cursed "+Player.getPlayerName()+" and lost "+rexp+" experience points!");
- Player.setExperience(Player.getExperience() - rexp);
- expCheck(Player);
- }
- if (luckdice == 50)
- {
- bot.ba.sendChatMessage(1, "|LUCK| - "+Player.getPlayerName()+" has been struck by lightning!");
- if (diedice > 90)
- {
- Player.setWeapon("Fists");
- Player.setWeaponAttack(1);
- Player.setMapIndex(4);
- Player.setLevel(1);
- Player.setDeaths(Player.getDeaths() + 1);
- Player.setHealth(100);
- bot.ba.sendChatMessage(1,"|DEATH| - "+Player.getPlayerName()+" has died and spawned at "+PMap+"!" );
- }
- if (diedice <= 90)
- {
- bot.ba.sendChatMessage(1,"|LUCK| - "+Player.getPlayerName()+" was badly injured and lost "+rexp+" experience points!");
- Player.setExperience(Player.getExperience() - rexp);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment