Jump to content

Pikkel Rick

Members
  • Posts

    3
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Pikkel Rick

  1. So i would gladly share this amazing script for you guys. This hoe will seduce every man in Gielinor. Let me know if you have any tips scripting related 😃 Features - Will target surrounding people (ignores the lvl 3 bots) - Keeps track of previous targets so it will only approach new ones - Amazing twerk skills P.s when added to the SDN? import com.epicbot.api.shared.APIContext; import com.epicbot.api.shared.GameType; import com.epicbot.api.shared.entity.Player; import com.epicbot.api.shared.entity.WidgetChild; import com.epicbot.api.shared.event.ChatMessageEvent; import com.epicbot.api.shared.methods.ITabsAPI; import com.epicbot.api.shared.model.Area; import com.epicbot.api.shared.model.Tile; import com.epicbot.api.shared.script.LoopScript; import com.epicbot.api.shared.script.ScriptManifest; import com.epicbot.api.shared.util.paint.frame.PaintFrame; import com.epicbot.api.shared.util.time.Time; import java.awt.*; import java.util.ArrayList; import java.util.List; @ScriptManifest(name = "Girlfriend", gameType = GameType.OS) public class main extends LoopScript { long startTime; int currentPrice = 1000; int boyfriendAmount = 0; int moneyEarned = 0; int theirCoinsAmountInTrade; String currentBoyfriend; String currentlyInTradeWith; String currentTarget; String state; ArrayList<String> pastTargets = new ArrayList<String>(); boolean justGotBought = false; boolean goPublicAdvertisement = false; Area grandExchangeArea = new Area(3156, 3479, 3174, 3468); Tile grandExchangeTile= new Tile(3164, 3474); public String getNewTarget(){ if(pastTargets.size() >= 10){ pastTargets.remove(0); } for(int i=0; i < getAPIContext().players().query().notMe().results().nearestList().size(); i++){ Player player = getAPIContext().players().query().notMe().results().nearestList().get(i); if(!player.getName().equals(currentBoyfriend) && !player.getName().equals(currentTarget) && player.getCombatLevel() > 3 && !pastTargets.contains(player.getName())){ if(!pastTargets.contains(player.getName())){ pastTargets.add(player.getName()); System.out.println(pastTargets); return player.getName(); } } }return null; } public void startContact(String target){ if(getAPIContext().players().query().named(target).results().nearest().isVisible()){ state = "Making contact"; if(!getAPIContext().widgets().isInterfaceOpen()){ if(getAPIContext().players().query().named(target).results().nearest().interact("Follow")){ if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText("Hey " + target + ", do you want to buy me as your gf?", true); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText(currentBoyfriend + " owns me now, he bought me for " + currentPrice + " gp", true); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText("You can buy me for " + (currentPrice + 1) + " gp", true); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText("If you own me, I will twerk for you daddy", true); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().players().query().named(currentTarget).results().nearest().interact("Trade with"); Time.sleep(5000, ()-> getAPIContext().widgets().isInterfaceOpen()); } } } } } public boolean isFirstTradeInterfaceOpen(){ return getAPIContext().widgets().get(335, 2).isVisible(); } public boolean isSecondTradeInterfaceOpen(){ return getAPIContext().widgets().get(334, 3).isVisible(); } public boolean otherPlayerAccepted(){ if(getAPIContext().widgets().query().textContains("Other player has accepted").results().first() != null){ return getAPIContext().widgets().query().textContains("Other player has accepted").results().first().isVisible(); }else{ return false; } } public void declineTrade(){ if(getAPIContext().widgets().query().group(335).textContains("Decline").results().first() != null){ getAPIContext().widgets().query().group(335).textContains("Decline").results().first().click(); } else if(getAPIContext().widgets().query().group(334).textContains("Decline").results().first() != null){ getAPIContext().widgets().query().group(334).textContains("Decline").results().first().click(); } } public void acceptTrade(){ if(getAPIContext().widgets().query().group(335).textContains("Accept").results().first() != null){ getAPIContext().widgets().query().group(335).textContains("Accept").results().first().click(); } else if(getAPIContext().widgets().query().group(334).textContains("Accept").results().first() != null){ getAPIContext().widgets().query().group(334).textContains("Accept").results().first().click(); } } public String getOtherPlayerTrading(){ String[] parts = getAPIContext().widgets().get(335, 31).getText().split(":"); return parts[1].replaceFirst("\\s", ""); } public int getTheirItemCount(String item){ List<WidgetChild> slots = getAPIContext().widgets().get(335, 28).getChildren(); for (WidgetChild slot : slots){ if(slot.getName().equals(item)){ return slot.getStackSize(); } }return 0; } public void handleTrade(){ if (isFirstTradeInterfaceOpen()){ currentlyInTradeWith = getOtherPlayerTrading(); state = "In trade"; getAPIContext().keyboard().sendText("Buy me for a minimum of " + (currentPrice + 1) + " gp", true); Time.sleep(20000, ()-> otherPlayerAccepted() || !isFirstTradeInterfaceOpen()); if(otherPlayerAccepted()){ theirCoinsAmountInTrade = getTheirItemCount("Coins"); System.out.println(theirCoinsAmountInTrade); System.out.println(currentPrice); if(theirCoinsAmountInTrade > currentPrice) { System.out.println("Should accept trade"); acceptTrade(); Time.sleep(3000, this::isSecondTradeInterfaceOpen); } } if(isFirstTradeInterfaceOpen()){ declineTrade(); Time.sleep(2000, ()-> !isFirstTradeInterfaceOpen()); } } if(isSecondTradeInterfaceOpen()) { acceptTrade(); getAPIContext().keyboard().sendText("<3", true); Time.sleep(20000, () -> otherPlayerAccepted() || !getAPIContext().widgets().isInterfaceOpen()); Time.sleep(1000); } } public void twerk(){ if(!getAPIContext().tabs().isOpen(ITabsAPI.Tabs.EMOTES)){ getAPIContext().tabs().open(ITabsAPI.Tabs.EMOTES); Time.sleep(2000, ()-> getAPIContext().tabs().isOpen(ITabsAPI.Tabs.EMOTES)); } if(getAPIContext().tabs().isOpen(ITabsAPI.Tabs.EMOTES)){ if(getAPIContext().widgets().query().group(216).actions("Panic").results().first() != null){ getAPIContext().widgets().query().group(216).actions("Panic").results().first().click(); Time.sleep(3000, ()-> !getAPIContext().localPlayer().isAnimating()); Time.sleep(400, 800); } } } public void praiseNewBoyfriend(){ state = "Praising new bf"; getAPIContext().keyboard().sendText(currentBoyfriend + " you are my new daddy", true); Time.sleep(500,1000); if(getAPIContext().players().query().named(currentBoyfriend).results().nearest() != null){ getAPIContext().players().query().named(currentBoyfriend).results().nearest().interact("Follow"); } getAPIContext().keyboard().sendText("I love you " + currentBoyfriend, true); Time.sleep(500,1000); getAPIContext().keyboard().sendText("Let me twerk for you daddy", true); twerk(); twerk(); getAPIContext().keyboard().sendText("Do you like that daddy?", true); twerk(); } public void doPublicAdvertisement(){ state = "Public advertisement"; if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().webWalking().walkTo(grandExchangeTile); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText(currentBoyfriend + " just bought me for " + currentPrice + " gp", true); Time.sleep(800, 1200); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText("Who wants to steal me from " + currentBoyfriend + "?", true); Time.sleep(800, 1200); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText("I will twerk for you if you own me", true); twerk(); Time.sleep(800, 1200); twerk(); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText("Buy me for " + (currentPrice + 1) + " gp to steal me from my bf", true); Time.sleep(800, 1200); } if(!getAPIContext().widgets().isInterfaceOpen()){ getAPIContext().keyboard().sendText("Buy me for " + (currentPrice + 1) + " and i will be your gf!", true); Time.sleep(800, 1200); } goPublicAdvertisement = false; } @Override protected int loop() { if(currentTarget == null){ currentTarget = getNewTarget(); } if(!getAPIContext().widgets().isInterfaceOpen()){ if(currentTarget != null){ if(!justGotBought){ if(!goPublicAdvertisement){ if(grandExchangeArea.contains(getAPIContext().localPlayer().getLocation())){ currentTarget = getNewTarget(); startContact(currentTarget); } } } } } if(getAPIContext().widgets().isInterfaceOpen()){ handleTrade(); } if(justGotBought){ praiseNewBoyfriend(); justGotBought = false; goPublicAdvertisement = true; } if(!grandExchangeArea.contains(getAPIContext().localPlayer().getLocation())){ if(!justGotBought){ if(!getAPIContext().widgets().isInterfaceOpen()){ goPublicAdvertisement = true; } } } if(goPublicAdvertisement){ doPublicAdvertisement(); } return 300; } @Override public boolean onStart(String... strings) { if (!getAPIContext().client().isLoggedIn()) { Time.sleep(15_000, () -> getAPIContext().client().isLoggedIn()); } System.out.println("Girlfriend script has started"); state = "Starting"; currentBoyfriend = "scapeboy12"; startTime = System.currentTimeMillis(); pastTargets.add("Test"); return true; } @Override protected void onChatMessage(ChatMessageEvent a){ if(a.getMessage().getText().contains("wishes to trade with you")){ String[] parts = a.getMessage().getText().split("wishes"); String tradeSender = parts[0]; String finalTradeSender = tradeSender.trim().replaceAll(new String(new char[] {(char)(160)}), " "); if(getAPIContext().players().query().named(finalTradeSender).results().nearest() != null) { getAPIContext().players().query().named(finalTradeSender).results().nearest().interact("Trade with"); Time.sleep(2000, ()-> getAPIContext().widgets().isInterfaceOpen()); } } if(a.getMessage().getText().contains("Accepted trade")){ currentPrice = theirCoinsAmountInTrade; moneyEarned += theirCoinsAmountInTrade; currentBoyfriend = currentlyInTradeWith; justGotBought = true; boyfriendAmount++; } } @Override protected void onPaint(Graphics2D g, APIContext ctx) { if (!getAPIContext().client().isLoggedIn()) { Time.sleep(15_000, () -> getAPIContext().client().isLoggedIn()); } if (getAPIContext().client().isLoggedIn()) { PaintFrame frame = new PaintFrame(); frame.setTitle("Selling gf"); frame.addLine("Runtime: ", Time.getFormattedRuntime(startTime)); frame.addLine("State: ", state); frame.addLine("Boyfriends had: ", boyfriendAmount); frame.addLine("Current boyfriend: ", currentBoyfriend); frame.addLine("Current target: ", currentTarget); frame.addLine("Money made: ", moneyEarned); frame.addLine("", ""); frame.draw(g, 0, 90, ctx); //drawing the actual frame. g.setColor(new Color(208, 189, 155, 255)); } } }
×
×
  • Create New...