You've already forked KF-MMO-Server
							
							Quest syncing
This commit is contained in:
		| @@ -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); | ||||
|      } | ||||
| } | ||||
							
								
								
									
										13
									
								
								Classes/questBook.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								Classes/questBook.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -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 | ||||
|     } | ||||
| } | ||||
							
								
								
									
										6
									
								
								Classes/questProgressData.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								Classes/questProgressData.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -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; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user