Files
2006Scape/2006Redone Server/src/com/rebotted/game/content/skills/fletching/LogCutting.java
T
Gptaqbc 5f500280b2 New stuff 6 (#324)
* Some stuff on weight

Some stuff on weight

* Cleaned some code related to trading and fixed most likely the issue where the player stays busy and cant trade till relog

Cleaned some code related to trading and fixed most likely the issue where the player stays busy and cant trade till relog

* removed a shitload of '== true'

I did a search and replace but I manually checked the changes that were made so there shouldn't be any issue with that.
2019-12-25 13:01:24 -05:00

391 lines
12 KiB
Java

package com.rebotted.game.content.skills.fletching;
import com.rebotted.event.CycleEvent;
import com.rebotted.event.CycleEventContainer;
import com.rebotted.event.CycleEventHandler;
import com.rebotted.game.items.ItemAssistant;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
/**
* @author Tom
*/
public class LogCutting {
private static final int KNIFE = 946, CUT_SOUND = 375;
public static void resetFletching(Player player) {
if (player.playerIsFletching) {
player.playerIsFletching = false;
player.startAnimation(65535);
}
}
public static void cutLog(final Player player, final int product, final int level, final double xp, int amount) {
player.doAmount = amount;
player.getPacketSender().closeAllWindows();
if (player.playerLevel[9] < level) {
player.getPacketSender().sendMessage("You need a fletching level of " + level + " to make this.");
return;
}
if (!player.playerIsFletching)
{
player.playerIsFletching = true;
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (player.doAmount <= 0 || !player.getItemAssistant().playerHasItem(LogCuttingInterface.log) || !player.getItemAssistant().playerHasItem(KNIFE) || player.isWoodcutting || player.isCrafting || player.isMoving || player.isMining || player.isBusy || player.isShopping || player.isSmithing || player.isFiremaking || player.isSpinning || player.isPotionMaking || player.playerIsFishing || player.isBanking || player.isSmelting || player.isTeleporting || player.isHarvesting || player.playerIsCooking || player.isPotCrafting) {
container.stop();
return;
}
else
{
player.startAnimation(1248);
player.getItemAssistant().deleteItem(LogCuttingInterface.log, 1);
if (product == 52)
{
player.getItemAssistant().addItem(product, 15);
player.getPacketSender().sendMessage("You carefully cut the " + ItemAssistant.getItemName(LogCuttingInterface.log) + " into 15 " + ItemAssistant.getItemName(product) + "s.");
}
else
{
player.getItemAssistant().addItem(product, 1);
player.getPacketSender().sendMessage("You carefully cut the " + ItemAssistant.getItemName(LogCuttingInterface.log) + " into a " + ItemAssistant.getItemName(product) + ".");
}
player.getPlayerAssistant().addSkillXP(xp, player.playerFletching);
player.doAmount--;
player.getPacketSender().sendSound(CUT_SOUND, 100, 0);
}
}
@Override
public void stop() {
player.playerIsFletching = false;
}
}, 3);
}
}
public static void handleClick(Player c, int buttonId) {
if (c.doAmount == 28 && c.playerIsFletching) {
c.getPacketSender().closeAllWindows();
c.playerIsFletching = false;
return;
}
switch (buttonId) {
/*
* normal log (item on interface 3)
*/
case 34185:
if (c.playerIsFletching) {
cutLog(c, 52, 1, 5, 1);
c.playerIsFletching = false;
return;
}
break;
case 34184:
cutLog(c, 52, 1, 5, 5);
return;
case 34183:
cutLog(c, 52, 1, 5, 10);
return;
case 34182:
cutLog(c, 52, 1, 5, 28);
return;
case 34189:
if (c.playerIsFletching) {
cutLog(c, 50, 5, 5, 1);
c.playerIsFletching = false;
return;
}
break;
case 34188:
cutLog(c, 50, 5, 5, 5);
return;
case 34187:
cutLog(c, 50, 5, 5, 10);
return;
case 34186:
cutLog(c, 50, 5, 5, 28);
return;
case 34193:
if (c.playerIsFletching) {
cutLog(c, 48, 10, 10, 1);
c.playerIsFletching = false;
return;
}
break;
case 34192:
cutLog(c, 48, 10, 10, 5);
return;
case 34191:
cutLog(c, 48, 10, 10, 10);
return;
case 34190:
cutLog(c, 48, 10, 10, 28);
return;
/*
* rest of the log's (item on interface 2)
*/
/*
* first item
*/
case 34170:
if (LogCuttingInterface.log == 1521 && c.playerIsFletching) {
cutLog(c, 54, 20, 16.5, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1519 && c.playerIsFletching) {
cutLog(c, 60, 35, 33.3, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1517 && c.playerIsFletching) {
cutLog(c, 64, 50, 50, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1515 && c.playerIsFletching) {
cutLog(c, 68, 65, 67.5, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1513 && c.playerIsFletching) {
cutLog(c, 72, 80, 83.25, 1);
c.playerIsFletching = false;
}
return;
case 34169:
if (LogCuttingInterface.log == 1521) {
cutLog(c, 54, 20, 16.5, 5);
}
if (LogCuttingInterface.log == 1519) {
cutLog(c, 60, 35, 33.3, 5);
}
if (LogCuttingInterface.log == 1517) {
cutLog(c, 64, 50, 50, 5);
}
if (LogCuttingInterface.log == 1515) {
cutLog(c, 68, 65, 67.5, 5);
}
if (LogCuttingInterface.log == 1513) {
cutLog(c, 72, 80, 83.25, 5);
}
return;
case 34168:
if (LogCuttingInterface.log == 1521) {
cutLog(c, 54, 20, 16.5, 10);
}
if (LogCuttingInterface.log == 1519) {
cutLog(c, 60, 35, 33.3, 10);
}
if (LogCuttingInterface.log == 1517) {
cutLog(c, 64, 50, 50, 10);
}
if (LogCuttingInterface.log == 1515) {
cutLog(c, 68, 65, 67.5, 10);
}
if (LogCuttingInterface.log == 1513) {
cutLog(c, 72, 80, 83.25, 10);
}
return;
case 34167:
if (LogCuttingInterface.log == 1521) {
cutLog(c, 54, 20, 16.5, 28);
}
if (LogCuttingInterface.log == 1519) {
cutLog(c, 60, 35, 33.3, 28);
}
if (LogCuttingInterface.log == 1517) {
cutLog(c, 64, 50, 50, 28);
}
if (LogCuttingInterface.log == 1515) {
cutLog(c, 68, 65, 67.5, 28);
}
if (LogCuttingInterface.log == 1513) {
cutLog(c, 72, 80, 83.25, 28);
}
return;
/*
* second item
*/
case 34174:
if (LogCuttingInterface.log == 1521 && c.playerIsFletching) {
cutLog(c, 56, 25, 25, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1519 && c.playerIsFletching) {
cutLog(c, 58, 40, 41.5, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1517 && c.playerIsFletching) {
cutLog(c, 62, 55, 58.3, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1515 && c.playerIsFletching) {
cutLog(c, 66, 70, 70, 1);
c.playerIsFletching = false;
}
if (LogCuttingInterface.log == 1513 && c.playerIsFletching) {
cutLog(c, 70, 85, 91.5, 1);
c.playerIsFletching = false;
}
return;
case 34173:
if (LogCuttingInterface.log == 1521) {
cutLog(c, 56, 25, 25, 5);
}
if (LogCuttingInterface.log == 1519) {
cutLog(c, 58, 40, 41.5, 5);
}
if (LogCuttingInterface.log == 1517) {
cutLog(c, 62, 55, 58.3, 5);
}
if (LogCuttingInterface.log == 1515) {
cutLog(c, 66, 70, 70, 5);
}
if (LogCuttingInterface.log == 1513) {
cutLog(c, 70, 85, 91.5, 5);
}
return;
case 34172:
if (LogCuttingInterface.log == 1521) {
cutLog(c, 56, 25, 25, 10);
}
if (LogCuttingInterface.log == 1519) {
cutLog(c, 58, 40, 41.5, 10);
}
if (LogCuttingInterface.log == 1517) {
cutLog(c, 62, 55, 58.3, 10);
}
if (LogCuttingInterface.log == 1515) {
cutLog(c, 66, 70, 70, 10);
}
if (LogCuttingInterface.log == 1513) {
cutLog(c, 70, 85, 91.5, 10);
}
return;
case 34171:
if (LogCuttingInterface.log == 1521) {
cutLog(c, 56, 25, 25, 28);
}
if (LogCuttingInterface.log == 1519) {
cutLog(c, 58, 40, 41.5, 28);
}
if (LogCuttingInterface.log == 1517) {
cutLog(c, 62, 55, 58.3, 28);
}
if (LogCuttingInterface.log == 1515) {
cutLog(c, 66, 70, 70, 28);
}
if (LogCuttingInterface.log == 1513) {
cutLog(c, 70, 85, 91.5, 28);
}
return;
}
}
public static void wolfBoneArrow(Player c) {
if (c.getItemAssistant().playerHasItem(2859)
&& c.getItemAssistant().playerHasItem(1755)) {
final int amount = c.getItemAssistant().getItemCount(2859);
final int makeAmount = c.getItemAssistant().getItemCount(2859)
+ c.getItemAssistant().getItemCount(2859) * Misc.random(4);
if (!c.getItemAssistant().playerHasItem(2859)) {
c.getDialogueHandler().sendStatement(
"You don't have any bones left to chisel.");
c.nextChat = 0;
return;
}
c.startAnimation(1248);
c.getItemAssistant().deleteItem(2859, amount);
c.getItemAssistant().addItem(2861, makeAmount);
c.getPlayerAssistant().addSkillXP(3 * amount, c.playerFletching);
c.getPacketSender().sendMessage("You turn your " + ItemAssistant.getItemName(2859) + " into " + ItemAssistant.getItemName(2861) + ".");
}
}
public static void flightedArrow(Player c) {// to do
if (c.playerLevel[c.playerFletching] < 5) {
c.getDialogueHandler().sendStatement("You need 5 fletching to fletch this.");
c.nextChat = 0;
return;
}
if (!c.getItemAssistant().playerHasItem(314) || !c.getItemAssistant().playerHasItem(2864)) {
c.getDialogueHandler().sendStatement("You don't enough materials to make these arrows.");
c.nextChat = 0;
return;
}
if (c.getItemAssistant().playerHasItem(314)
&& c.getItemAssistant().playerHasItem(2864)) {
final int feather = c.getItemAssistant().getItemCount(314), arrowShaft = c
.getItemAssistant().getItemCount(2864);
if (feather == arrowShaft * 4) {
c.startAnimation(1248);
c.getItemAssistant().deleteItem(314, feather * 4);
c.getItemAssistant().deleteItem(2864, arrowShaft);
c.getItemAssistant().addItem(2865, arrowShaft);
c.getPacketSender().sendMessage("You turn your " + ItemAssistant.getItemName(2864) + " into " + ItemAssistant.getItemName(2865) + "(s).");
} else {
c.getPacketSender().sendMessage("You need 4 times the amount of feathers as arrow shafts to do this.");
}
}
}
public static void ogreArrow(Player c) {
if (c.playerLevel[c.playerFletching] < 5) {
c.getDialogueHandler().sendStatement("You need 5 fletching to fletch this.");
c.nextChat = 0;
return;
}
if (!c.getItemAssistant().playerHasItem(2861) || !c.getItemAssistant().playerHasItem(2865)) {
c.getDialogueHandler().sendStatement("You don't enough materials to make these arrows.");
c.nextChat = 0;
return;
}
final int wolfBoneArrow = c.getItemAssistant().getItemCount(2861), flightedArrow = c.getItemAssistant().getItemCount(2865);
if (c.getItemAssistant().playerHasItem(2861)
&& c.getItemAssistant().playerHasItem(2865)) {
if (wolfBoneArrow == flightedArrow) {
c.startAnimation(1248);
c.getItemAssistant().addItem(2866, wolfBoneArrow);
c.getPlayerAssistant().addSkillXP(1 * wolfBoneArrow, c.playerFletching);
c.getItemAssistant().deleteItem(2861, wolfBoneArrow);
c.getItemAssistant().deleteItem(2865, wolfBoneArrow);
c.getPacketSender().sendMessage("You turn your " + ItemAssistant.getItemName(2865) + " (s) into " + ItemAssistant.getItemName(2866) + "(s).");
} else if (wolfBoneArrow > flightedArrow) {
c.startAnimation(1248);
c.getItemAssistant().addItem(2866, flightedArrow);
c.getPlayerAssistant().addSkillXP(1 * flightedArrow, c.playerFletching);
c.getItemAssistant().deleteItem(2861, flightedArrow);
c.getItemAssistant().deleteItem(2865, flightedArrow);
c.getPacketSender().sendMessage("You turn your " + ItemAssistant.getItemName(2865) + " (s) into " + ItemAssistant.getItemName(2866) + "(s).");
} else if (wolfBoneArrow < flightedArrow) {
c.startAnimation(1248);
c.getItemAssistant().addItem(2866, wolfBoneArrow);
c.getPlayerAssistant().addSkillXP(1 * wolfBoneArrow, c.playerFletching);
c.getItemAssistant().deleteItem(2861, wolfBoneArrow);
c.getItemAssistant().deleteItem(2865, wolfBoneArrow);
c.getPacketSender().sendMessage("You turn your " + ItemAssistant.getItemName(2865) + " (s) into " + ItemAssistant.getItemName(2866) + "(s).");
}
}
}
public static void makeShafts(Player c) {
if (c.getItemAssistant().playerHasItem(2862) && c.getItemAssistant().playerHasItem(946)) {
final int amount = c.getItemAssistant().getItemCount(2862);
final int makeAmount = c.getItemAssistant().getItemCount(2862) + c.getItemAssistant().getItemCount(2862) * Misc.random(4);
if (!c.getItemAssistant().playerHasItem(2862)) {
c.getDialogueHandler().sendStatement("You don't have any logs left to fletch.");
c.nextChat = 0;
return;
}
c.startAnimation(1248);
c.getItemAssistant().deleteItem(2862, amount);
c.getItemAssistant().addItem(2864, makeAmount);
c.getPlayerAssistant().addSkillXP(2 * amount, c.playerFletching);
c.getPacketSender().sendMessage("You turn your " + ItemAssistant.getItemName(2862) + " (s) into " + ItemAssistant.getItemName(2864) + "(s).");
}
}
}