devtools: add addxp
This commit is contained in:
@@ -419,4 +419,22 @@ public interface Client extends GameEngine
|
||||
void setProjectilesHidden(boolean state);
|
||||
|
||||
CollisionData[] getCollisionMaps();
|
||||
|
||||
@VisibleForDevtools
|
||||
int[] getBoostedSkillLevels();
|
||||
|
||||
@VisibleForDevtools
|
||||
int[] getRealSkillLevels();
|
||||
|
||||
@VisibleForDevtools
|
||||
int[] getSkillExperiences();
|
||||
|
||||
@VisibleForDevtools
|
||||
int[] getChangedSkills();
|
||||
|
||||
@VisibleForDevtools
|
||||
int getChangedSkillsCount();
|
||||
|
||||
@VisibleForDevtools
|
||||
void setChangedSkillsCount(int i);
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ import com.google.common.eventbus.Subscribe;
|
||||
import com.google.inject.Provides;
|
||||
import java.awt.Font;
|
||||
import java.awt.image.BufferedImage;
|
||||
import static java.lang.Math.min;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import javax.imageio.ImageIO;
|
||||
@@ -36,6 +37,8 @@ import javax.inject.Inject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.api.ChatMessageType;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.Experience;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.api.events.CommandExecuted;
|
||||
import net.runelite.api.events.VarbitChanged;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
@@ -157,6 +160,24 @@ public class DevToolsPlugin extends Plugin
|
||||
eventBus.post(new VarbitChanged()); // fake event
|
||||
break;
|
||||
}
|
||||
case "addxp":
|
||||
{
|
||||
Skill skill = Skill.valueOf(args[0].toUpperCase());
|
||||
int xp = Integer.parseInt(args[1]);
|
||||
|
||||
int totalXp = client.getSkillExperience(skill) + xp;
|
||||
int level = min(Experience.getLevelForXp(totalXp), 99);
|
||||
|
||||
client.getBoostedSkillLevels()[skill.ordinal()] = level;
|
||||
client.getRealSkillLevels()[skill.ordinal()] = level;
|
||||
client.getSkillExperiences()[skill.ordinal()] = totalXp;
|
||||
|
||||
int[] skills = client.getChangedSkills();
|
||||
int count = client.getChangedSkillsCount();
|
||||
skills[++count - 1 & 31] = skill.ordinal();
|
||||
client.setChangedSkillsCount(count);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -101,14 +101,29 @@ public interface RSClient extends RSGameEngine, Client
|
||||
int getBaseY();
|
||||
|
||||
@Import("boostedSkillLevels")
|
||||
@Override
|
||||
int[] getBoostedSkillLevels();
|
||||
|
||||
@Import("realSkillLevels")
|
||||
@Override
|
||||
int[] getRealSkillLevels();
|
||||
|
||||
@Import("skillExperiences")
|
||||
@Override
|
||||
int[] getSkillExperiences();
|
||||
|
||||
@Import("changedSkills")
|
||||
@Override
|
||||
int[] getChangedSkills();
|
||||
|
||||
@Import("changedSkillsCount")
|
||||
@Override
|
||||
int getChangedSkillsCount();
|
||||
|
||||
@Import("changedSkillsCount")
|
||||
@Override
|
||||
void setChangedSkillsCount(int i);
|
||||
|
||||
@Import("gameState")
|
||||
int getRSGameState();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user