Implement Party Room, A bunch of client side changes, Other stuff (#503)

* Fixup Discord links

* Fix required level to chop Dramen tree

* More Discord link fixes

* Show bots as (store)

* Fixup port

move to port 8080 as used by file server

* Fixup report handler

* Some client changes

* minor changes

Show mod status

* Show item value on ground

* Mark stores and players differently on mini map

* Some tidy up

* default to world 1

* Update trade with text

* revert nodeID changes

* Update RS Guide name

* Remove some command aliases

* Log bots and players differently

* Fixup

* minor changes

* Fixup colors

* Update RSInterface.java

* Settings for controlling options

* Add memory command

* Update server skill magic numbers

* Update server skill magic numbers

* Update colors for ground item text

* Update .gitignore

* Update player health value more often

* Add in game item/NPC/object search

* Item amounts and value displayed

* Update examine text

* Start with volume off

* Fixup tab 7 still showing with other interfaces

* Fixup search

* Fixup entering numbers after letter in amounts

* minor fixup

* fix indentation

* change type of value

* Fixup values shown

* Fix when clicking while tab 7 open

* Fixup negative amounts

* Update some method names

* Fixup method name

* tidy up method values

* Initial move for overlays

* Update more method names, variables

* Update debug menu

* Update experience info area

* Update Signlink.java

* more refactoring/deob

* Tidy up

* refresh skills

* Update method name, debug display

* fixup

* Show wrench icon on custom settings tab

* alignment

* Modify zoom

* Use smaller numbers for exp/h

* Update interface command

* tidy up

* Fixup tele location

* Fixup if interface doesn't exist

* Add some interface options

* Update checks

* Open bank interface for item search

TODO:
change title
maybe not display in chat
change options for items?
change command to searchitem - open the bank interface, open a text input interface

* re-fix

* Show open interface ID

* Update bank string shown

* Update search function

* Scroll zooming

* Only fill chat with search if not searching for an item

* add comments

* Change system update message

* Remove fps command

* Increase draw distance

* fixup

* Draw distance option

* [Party Room] Fix party room stairs

* Add new free slots method to check for stackable items counting as a free slot

* [Party Room] Deposit/Withdraw items all working

* [Party Room] Fully working

* [Party Room] Don't spawn balloons on the table

Players cannot pickup the items

* Fixup boundary

* Drop items in random amounts up to 4 stacks

* Update swampy boat to work

* Minor fixup

* Update Game.java

* Move player name up slightly

* Update some naming

* Tidy up

* Add ectoplasm agility shortcuts

* Update ObjectsActions.java

* Ectofuntus stuff

* fixup

* Ectofuntus bone grinder get status

* auto worship

* Allow claiming ecto-tokens

* change variable

* fixup

* Make use of GameConstants.WORLD

* Randomize bot passwords

* Don't show player shops as online

* Update opening oysters

* Update GemCutting.java

* Dragontooth island transport

* Ectofuntus stuff

* More constants

* Bill teach travel to Mos Le'Harmless and back

Also able to explore the whole ship

* Use better looking buttons

* Update .gitignore
This commit is contained in:
Danial
2021-09-29 11:40:34 +13:00
committed by GitHub
parent d30e833dd8
commit 8589277ece
51 changed files with 1756 additions and 717 deletions
@@ -103,9 +103,13 @@ public class ItemAssistant {
}
public void replaceItem(int itemToReplace, int replaceWith) {
if(playerHasItem(itemToReplace)) {
deleteItem(itemToReplace, 1);
addItem(replaceWith, 1);
replaceItem(itemToReplace, replaceWith, 1);
}
public void replaceItem(int itemToReplace, int replaceWith, int amount) {
if(playerHasItem(itemToReplace, amount)) {
deleteItem(itemToReplace, amount);
addItem(replaceWith, amount);
}
}
@@ -1705,6 +1709,7 @@ public class ItemAssistant {
}
public void resetBank() {
player.getPacketSender().sendString("The Bank of " + GameConstants.SERVER_NAME, 5383, true);
if (player.getOutStream() != null) {
player.getOutStream().createFrameVarSizeWord(53);
player.getOutStream().writeWord(5382); // bank
@@ -2480,6 +2485,18 @@ public class ItemAssistant {
return freeS;
}
public int freeSlots(int itemID, int amount) {
int freeS = 0;
for (int i = 0; i < player.playerItems.length; i ++) {
int _id = player.playerItems[i];
int _amt = player.playerItemsN[i];
if (_id <= 0 || (_id == itemID && isStackable(_id) && _amt + amount <= Integer.MAX_VALUE)) {
freeS++;
}
}
return freeS;
}
public int findItem(int id, int[] items, int[] amounts) {
for (int i = 0; i < player.playerItems.length; i++) {
if (items[i] - 1 == id && amounts[i] > 0) {
@@ -104,7 +104,7 @@ public class ItemConstants {
2416, 2417, 88, 1540, 2714, 432, 433, 1555, 1556, 1557, 1558, 1559,
1560, 1561, 1562, 1563, 1564, 1565, 7585, 7584, 300, 775, 776, 777,
6180, 6181, 6182, 6183, 6184, 6185, 6186, 6187, 6188, 2528, 4447,
290, 666, 667 };
290, 666, 667, 4251, 4252, 4278};
public final static int[] ITEM_TRADEABLE = { 5317, 3842, 3844, 3840, 8844, 8845,
8846, 8847, 8848, 8849, 8850, 10551, 6570, 7462, 7461, 7460, 7459,
@@ -120,15 +120,15 @@ public class ItemConstants {
4218, 4219, 4220, 4221, 4222, 4223, 4224, 1555, 1556, 1557, 1558,
1559, 1560, 1561, 1562, 1563, 1564, 1565, 7585, 7584, 2714, 432,
433, 290, 5075, 5074, 5073, 5071, 5070, 7413, 6529, 4067, 2996, 1464, 666, 667,
2412, 2413, 2414, 771, 772};
2412, 2413, 2414, 771, 772, 4251, 4252, 4278};
public final static int[] ITEM_UNALCHABLE = { 995, 1555, 1556, 1557, 1558,
1559, 1560, 1561, 1562, 1563, 1564, 1565, 7583, 1566, 7585, 2528,
4214, 4212, 2714, 432, 433, 300, 775, 776, 777, 6180, 6181, 6182,
6183, 6184, 6185, 6186, 6187, 6188, 2528, 4447, 290, 666, 667};
6183, 6184, 6185, 6186, 6187, 6188, 2528, 4447, 290, 666, 667, 4278};
public final static int[] ITEM_BANKABLE = {2528, 4447};
public final static int[] DESTROYABLE_ITEMS = {775, 776, 777, 2528, 6570, 2714, 432, 433, 300, 666};
public final static int[] DESTROYABLE_ITEMS = {775, 776, 777, 2528, 6570, 2714, 432, 433, 300, 666, 4251, 4252, 4278};
}
@@ -35,11 +35,11 @@ import com.rs2.util.Misc;
public class UseItem {
public static void itemOnObject(Player c, int objectID, int objectX, int objectY, int itemId) {
final int goodPosXType1 = objectX - 5;
final int goodPosXType2 = objectX + 5;
final int goodPosYType1 = objectY - 5;
final int goodPosYType2 = objectY + 5;
if (c.absX >= goodPosXType1 && c.absX <= goodPosXType2 && c.absY >= goodPosYType1 && c.absY <= goodPosYType2) {
final int minX = objectX - 5;
final int maxX = objectX + 5;
final int minY = objectY - 5;
final int maxY = objectY + 5;
if (c.absX >= minX && c.absX <= maxX && c.absY >= minY && c.absY <= maxY) {
c.turnPlayerTo(objectX, objectY);
} else {
c.getPlayerAssistant().playerWalk(objectX, objectY);
@@ -1,5 +1,7 @@
package com.rs2.game.items.impl;
import com.rs2.game.content.skills.prayer.Ectofuntus;
public class Fillables {
public static boolean canFill(int id, int oid) {
@@ -38,6 +40,8 @@ public class Fillables {
return 1823;
case 6667:
return 6668;
case 4252:
return 4251;
}
return -1;
}
@@ -70,6 +74,8 @@ public class Fillables {
return "waterskin";
case 6667:
return "fishbowl";
case 4252:
return "ectophial";
}
return "There was a problem with your current action, please report this to Mod Andrew.";
}
@@ -108,6 +114,8 @@ public class Fillables {
case 6232:
case 2864:
return "fountain";
case Ectofuntus.ECTOFUNTUS:
return "ectofuntus";
}
return "Error";
}