Quest syncing
This commit is contained in:
parent
4e2eedda49
commit
d0ca68dfa8
|
@ -1,6 +1,7 @@
|
|||
import { enemyDamageInfo } from "./enemyDamageInfo";
|
||||
import { physicsObject } from "./physicsObject";
|
||||
import { playerInventory } from "./playerInventory";
|
||||
import { questBook } from "./questBook";
|
||||
|
||||
export class playerData{
|
||||
id : number
|
||||
|
@ -9,8 +10,14 @@ export class playerData{
|
|||
characterId : number
|
||||
inventory : playerInventory = new playerInventory()
|
||||
rigidbody : physicsObject = new physicsObject()
|
||||
questBook : questBook = new questBook()
|
||||
damageInfo : enemyDamageInfo[] = []
|
||||
|
||||
constructor(init?: Partial<playerData>) {
|
||||
Object.assign(this, init);
|
||||
this.questBook = new questBook(this.questBook)
|
||||
}
|
||||
|
||||
copyStart(){
|
||||
let player : any = {}
|
||||
player.id = this.id
|
||||
|
@ -47,8 +54,4 @@ export class playerData{
|
|||
this.inventory.equipment = [-1, -1, -1]
|
||||
}
|
||||
}
|
||||
|
||||
constructor(init?: Partial<playerData>) {
|
||||
Object.assign(this, init);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
import { questProgressData } from "./questProgressData";
|
||||
|
||||
export class questBook{
|
||||
quests = {}
|
||||
|
||||
constructor(init?: Partial<questBook>) {
|
||||
Object.assign(this, init);
|
||||
}
|
||||
|
||||
updateQuest(quest : questProgressData){
|
||||
this.quests[quest.id] = quest
|
||||
}
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
export class questProgressData{
|
||||
id : number
|
||||
state : number
|
||||
repeatCount : number
|
||||
objectives : []
|
||||
}
|
|
@ -1,7 +1,12 @@
|
|||
import { playerData } from "../Classes/playerData";
|
||||
import { questProgressData } from "../Classes/questProgressData";
|
||||
|
||||
export function update(socket, data){
|
||||
if(!socket.hasOwnProperty("player")) return;
|
||||
|
||||
let buff = Buffer.from(data, 'base64');
|
||||
//let data1 : levelUpdateHost = JSON.parse(buff.toString('utf-8'));
|
||||
//let player : playerData = socket.player
|
||||
let data1 : questProgressData = JSON.parse(buff.toString('utf-8'));
|
||||
let player : playerData = socket.player
|
||||
|
||||
player.questBook.updateQuest(data1)
|
||||
}
|
2
index.ts
2
index.ts
|
@ -5,6 +5,7 @@ import { registerItemCallbacks } from "./Items/itemSocket";
|
|||
import { registerLobbyCallbacks } from "./Lobby/lobbySocket";
|
||||
import { registerAccountCallbacks } from "./Account/accountSocket";
|
||||
import { registerLevelCallbacks } from "./Level/levelSocket";
|
||||
import { registerQuestCallbacks } from "./Quest/questSocket";
|
||||
|
||||
const express = require("express");
|
||||
const app = express();
|
||||
|
@ -33,6 +34,7 @@ io.on('connection', (socket) => {
|
|||
registerLobbyCallbacks(socket);
|
||||
registerItemCallbacks(socket);
|
||||
registerLevelCallbacks(socket);
|
||||
registerQuestCallbacks(socket);
|
||||
|
||||
socket.io = game.socketIO = io;
|
||||
|
||||
|
|
Loading…
Reference in New Issue