projectile sync
This commit is contained in:
parent
142ec1dd05
commit
225411823d
|
@ -0,0 +1,5 @@
|
||||||
|
export class inventoryItemTransaction{
|
||||||
|
type : number
|
||||||
|
itemId : number
|
||||||
|
amount : number
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
export class projectileInfo{
|
||||||
|
//unneeded
|
||||||
|
}
|
|
@ -5,6 +5,7 @@ import { itemRequest } from "../Classes/itemRequest";
|
||||||
import { lobbyMessage } from "../Classes/lobbyMessage";
|
import { lobbyMessage } from "../Classes/lobbyMessage";
|
||||||
import { game } from "../game";
|
import { game } from "../game";
|
||||||
import { playerData } from "../Classes/playerData";
|
import { playerData } from "../Classes/playerData";
|
||||||
|
import { inventoryItemTransaction } from "../Classes/inventoryItemTransaction";
|
||||||
|
|
||||||
export function registerItemCallbacks(socket){
|
export function registerItemCallbacks(socket){
|
||||||
socket.on('item/pickup', (data) => {
|
socket.on('item/pickup', (data) => {
|
||||||
|
@ -86,6 +87,26 @@ export function registerItemCallbacks(socket){
|
||||||
player.inventory.items.splice(item, 1)
|
player.inventory.items.splice(item, 1)
|
||||||
});
|
});
|
||||||
|
|
||||||
|
socket.on('item/deleteMany', (data) => {
|
||||||
|
if(!socket.hasOwnProperty("user")) return;
|
||||||
|
|
||||||
|
let buff = Buffer.from(data, 'base64');
|
||||||
|
let data1 : inventoryItemTransaction[] = JSON.parse(buff.toString('utf-8'));
|
||||||
|
|
||||||
|
let player : playerData = socket.player
|
||||||
|
data1.forEach(t=>{
|
||||||
|
switch(t.type){
|
||||||
|
case 0:
|
||||||
|
player.inventory.items.find(i=>i.id == t.itemId).count += t.amount;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
let item = player.inventory.items.findIndex(i=>i.id == t.itemId);
|
||||||
|
player.inventory.items.splice(item, 1)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
socket.on('item/request', (data) => {
|
socket.on('item/request', (data) => {
|
||||||
if(!socket.hasOwnProperty("user")) return;
|
if(!socket.hasOwnProperty("user")) return;
|
||||||
|
|
||||||
|
|
|
@ -25,4 +25,13 @@ export function registerLevelCallbacks(socket){
|
||||||
room.enemies = data1.enemies
|
room.enemies = data1.enemies
|
||||||
room.objects = data1.objects
|
room.objects = data1.objects
|
||||||
});
|
});
|
||||||
|
|
||||||
|
socket.on('level/projectile', (data) => {
|
||||||
|
if(!socket.hasOwnProperty("user")) return;
|
||||||
|
|
||||||
|
let buff = Buffer.from(data, 'base64');
|
||||||
|
//let data1 = JSON.parse();
|
||||||
|
|
||||||
|
game.socketIO.emit('level/projectile', buff.toString('utf-8'))
|
||||||
|
});
|
||||||
}
|
}
|
2
game.ts
2
game.ts
|
@ -16,7 +16,7 @@ export class game{
|
||||||
|
|
||||||
static lobbyState : lobbyState = new lobbyState()
|
static lobbyState : lobbyState = new lobbyState()
|
||||||
|
|
||||||
/** Max items: 20 */
|
/** Max items: 28 */
|
||||||
static messages : lobbyMessage[] = [];
|
static messages : lobbyMessage[] = [];
|
||||||
|
|
||||||
static addMessage(message:lobbyMessage) {
|
static addMessage(message:lobbyMessage) {
|
||||||
|
|
Loading…
Reference in New Issue