Skip to content

Commit df2c5f4

Browse files
committed
Merge branch 'woodcutting' of github.com:Promises/runejs-server into woodcutting
2 parents 0eb9350 + 8a4a8f4 commit df2c5f4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+942
-227
lines changed

plugins/combat/combat.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
1-
const { NPC_ACTION, DamageType, wait } = require('../rune.js');
1+
const { NPC_ACTION, DamageType, schedule } = require('../rune.js');
22

33
const action = async details => {
44
const { player, npc } = details;
55

66
npc.updateFlags.addDamage(1, DamageType.DAMAGE, 4, 5);
7+
npc.say(`Ow!`);
78

8-
await wait(1000);
9+
await schedule(4);
910

10-
player.updateFlags.addDamage(1, DamageType.DAMAGE, 9, 10);
11+
player.updateFlags.addDamage(1, DamageType.DAMAGE, 4, 5);
1112
};
1213

1314
module.exports = {

plugins/rune.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ const { InteractingAction, loopingAction, walkToAction } = require('../dist/worl
1313
const { DamageType, Damage, Animation, Graphic, ChatMessage } = require('../dist/world/actor/update-flags');
1414
const { Skill, Skills } = require('../dist/world/actor/skills');
1515
const { Achievements, giveAchievement } = require('../dist/world/actor/player/achievements');
16-
const { of } = require('rxjs');
17-
const { delay } = require('rxjs/operators');
16+
const { wait, schedule } = require('../dist/task/task');
1817

1918
module.exports = {
2019

@@ -27,14 +26,13 @@ module.exports = {
2726
WORLD_ITEM_ACTION: ActionType.WORLD_ITEM_ACTION, OBJECT_ACTION: ActionType.OBJECT_ACTION,
2827
ITEM_ON_OBJECT_ACTION: ActionType.ITEM_ON_OBJECT_ACTION, ITEM_ON_NPC_ACTION: ActionType.ITEM_ON_NPC_ACTION,
2928
COMMAND_ACTION: ActionType.COMMAND, PLAYER_INIT: ActionType.PLAYER_INIT, NPC_INIT: ActionType.NPC_INIT,
29+
PLAYER_ACTION: ActionType.PLAYER_ACTION,
3030
QUEST: ActionType.QUEST, RunePlugin,
3131

3232
world, InteractingAction, loopingAction, walkToAction,
3333

3434
DamageType, Damage, Animation, Graphic, ChatMessage, Skill, Skills, Achievements, giveAchievement,
3535

36-
wait: async (waitLength) => {
37-
await of(null).pipe(delay(waitLength)).toPromise();
38-
}
36+
wait, schedule
3937

4038
};

src/data-dump.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { join } from 'path';
22
import { writeFileSync } from 'fs';
33
import { cache } from '@server/game-server';
4-
import { logger } from '@runejs/logger/dist/logger';
4+
import { logger } from '@runejs/logger';
55
import { ItemDefinition, NpcDefinition, Widget } from '@runejs/cache-parser';
66

77
function dump<T>(fileName: string, definitions: Map<number, T>): boolean {

src/error-handling.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { logger } from '@runejs/logger/dist/logger';
1+
import { logger } from '@runejs/logger';
22

33
/*
44
* Error handling! Feel free to add other types of errors or warnings here. :)

src/game-server.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import { setItemOnNpcPlugins } from '@server/world/actor/player/action/item-on-n
2525
import { setPlayerInitPlugins } from '@server/world/actor/player/player';
2626
import { setNpcInitPlugins } from '@server/world/actor/npc/npc';
2727
import { setQuestPlugins } from '@server/world/config/quests';
28+
import { setPlayerPlugins } from '@server/world/actor/player/action/player-action';
2829

2930

3031
export let serverConfig: ServerConfig;
@@ -68,6 +69,7 @@ export async function injectPlugins(): Promise<void> {
6869
setWidgetPlugins(actionPluginMap[ActionType.WIDGET_ACTION]);
6970
setPlayerInitPlugins(actionPluginMap[ActionType.PLAYER_INIT]);
7071
setNpcInitPlugins(actionPluginMap[ActionType.NPC_INIT]);
72+
setPlayerPlugins(actionPluginMap[ActionType.PLAYER_ACTION]);
7173
}
7274

7375
function generateCrcTable(): void {

src/net/data-parser/client-login-parser.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { Player } from '@server/world/actor/player/player';
33
import { Isaac } from '@server/net/isaac';
44
import { serverConfig, world } from '@server/game-server';
55
import { DataParser } from './data-parser';
6-
import { logger } from '@runejs/logger/dist/logger';
6+
import { logger } from '@runejs/logger';
77
import { ByteBuffer } from '@runejs/byte-buffer';
88
import * as bcrypt from 'bcrypt';
99
import { loadPlayerSave } from '@server/world/actor/player/player-data';

src/net/incoming-packet-directory.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import { itemInteractionPacket } from '@server/net/incoming-packets/item-interac
2121
import { itemOnObjectPacket } from '@server/net/incoming-packets/item-on-object-packet';
2222
import { numberInputPacket } from '@server/net/incoming-packets/number-input-packet';
2323
import { itemOnNpcPacket } from '@server/net/incoming-packets/item-on-npc-packet';
24+
import { playerInteractionPacket } from '@server/net/incoming-packets/player-interaction-packet';
2425
import { examinePacket } from '@server/net/incoming-packets/examine-packet';
2526

2627
const ignore = [ 234, 160, 216, 13, 58 /* camera move */ ];
@@ -62,6 +63,9 @@ const packets: { [key: number]: incomingPacket } = {
6263
164: objectInteractionPacket,
6364
183: objectInteractionPacket,
6465

66+
68: playerInteractionPacket,
67+
211: playerInteractionPacket,
68+
6569
148: examinePacket, // examine item
6670
151: examinePacket, // examine object
6771
247: examinePacket, // examine npc

src/net/incoming-packet-sizes.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ export const incomingPacketSizes: number[] = [
55
6, -3, -3, -3, -3, -3, -3, -3, 8, -3, //30
66
16, -3, -3, -3, -3, -3, -3, -3, -3, -3, //40
77
-3, -3, -3, -3, -3, -3, -3, 2, 4, -3, //50
8-
-3, -3, -3, 2, 4, 6, -3, -3, -3, -3, //60
8+
-3, -3, -3, 2, 4, 6, -3, -3, 2, -3, //60
99
-3, -3, -3, -1, -3, -3, -3, -3, -3, -3, //70
1010
-3, -3, -3, 9, -3, 6, 8, -3, -3, -1, //80
1111
-3, -3, -3, -3, -3, -3, -3, -3, 8, -3, //90
@@ -20,7 +20,7 @@ export const incomingPacketSizes: number[] = [
2020
-3, -3, -3, 6, -3, -3, -3, -3, -3, -3, //180
2121
-3, -3, -3, -3, -3, -3, -3, -3, -3, -3, //190
2222
-3, -3, -3, -3, -3, -3, -3, -3, 10, -3, //200
23-
-3, -3, -3, -3, -3, -3, 0, -3, -3, -3, //210
23+
-3, 2, -3, -3, -3, -3, 0, -3, -3, -3, //210
2424
-3, -3, -3, -3, -3, -3, -3, -3, 8, -3, //220
2525
-3, 13, -3, -3, 4, -3, -1, -3, 4, -3, //230
2626
-3, -3, -3, -3, -3, -1, -3, 2, -1, -3, //240

src/net/incoming-packets/item-on-item-packet.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { incomingPacket } from '../incoming-packet';
22
import { Player } from '../../world/actor/player/player';
33
import { widgets } from '@server/world/config/widget';
4-
import { logger } from '@runejs/logger/dist/logger';
4+
import { logger } from '@runejs/logger';
55
import { itemOnItemAction } from '@server/world/actor/player/action/item-on-item-action';
66
import { ByteBuffer } from '@runejs/byte-buffer';
77

src/net/incoming-packets/item-on-npc-packet.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { incomingPacket } from '../incoming-packet';
22
import { Player } from '../../world/actor/player/player';
33
import { widgets } from '@server/world/config/widget';
4-
import { logger } from '@runejs/logger/dist/logger';
4+
import { logger } from '@runejs/logger';
55
import { world } from '@server/game-server';
66
import { World } from '@server/world/world';
77
import { itemOnNpcAction } from '@server/world/actor/player/action/item-on-npc-action';

0 commit comments

Comments
 (0)