You've already forked KF-MMO-Server
							
							Quest syncing
This commit is contained in:
		| @@ -1,6 +1,7 @@ | |||||||
| import { enemyDamageInfo } from "./enemyDamageInfo"; | import { enemyDamageInfo } from "./enemyDamageInfo"; | ||||||
| import { physicsObject } from "./physicsObject"; | import { physicsObject } from "./physicsObject"; | ||||||
| import { playerInventory } from "./playerInventory"; | import { playerInventory } from "./playerInventory"; | ||||||
|  | import { questBook } from "./questBook"; | ||||||
|  |  | ||||||
| export class playerData{ | export class playerData{ | ||||||
|     id : number |     id : number | ||||||
| @@ -9,8 +10,14 @@ export class playerData{ | |||||||
|     characterId : number |     characterId : number | ||||||
|     inventory : playerInventory = new playerInventory() |     inventory : playerInventory = new playerInventory() | ||||||
|     rigidbody : physicsObject = new physicsObject() |     rigidbody : physicsObject = new physicsObject() | ||||||
|  |     questBook : questBook = new questBook() | ||||||
|     damageInfo : enemyDamageInfo[] = [] |     damageInfo : enemyDamageInfo[] = [] | ||||||
|  |  | ||||||
|  |     constructor(init?: Partial<playerData>) { | ||||||
|  |         Object.assign(this, init); | ||||||
|  |         this.questBook = new questBook(this.questBook) | ||||||
|  |      } | ||||||
|  |  | ||||||
|     copyStart(){ |     copyStart(){ | ||||||
|         let player : any = {} |         let player : any = {} | ||||||
|         player.id = this.id |         player.id = this.id | ||||||
| @@ -47,8 +54,4 @@ export class playerData{ | |||||||
|             this.inventory.equipment = [-1, -1, -1] |             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){ | export function update(socket, data){ | ||||||
|     if(!socket.hasOwnProperty("player")) return; |     if(!socket.hasOwnProperty("player")) return; | ||||||
|  |  | ||||||
|     let buff = Buffer.from(data, 'base64'); |     let buff = Buffer.from(data, 'base64'); | ||||||
|     //let data1 : levelUpdateHost = JSON.parse(buff.toString('utf-8')); |     let data1 : questProgressData = JSON.parse(buff.toString('utf-8')); | ||||||
|     //let player : playerData = socket.player |     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 { registerLobbyCallbacks } from "./Lobby/lobbySocket"; | ||||||
| import { registerAccountCallbacks } from "./Account/accountSocket"; | import { registerAccountCallbacks } from "./Account/accountSocket"; | ||||||
| import { registerLevelCallbacks } from "./Level/levelSocket"; | import { registerLevelCallbacks } from "./Level/levelSocket"; | ||||||
|  | import { registerQuestCallbacks } from "./Quest/questSocket"; | ||||||
|  |  | ||||||
| const express = require("express"); | const express = require("express"); | ||||||
| const app = express(); | const app = express(); | ||||||
| @@ -33,6 +34,7 @@ io.on('connection', (socket) => { | |||||||
|     registerLobbyCallbacks(socket); |     registerLobbyCallbacks(socket); | ||||||
|     registerItemCallbacks(socket); |     registerItemCallbacks(socket); | ||||||
|     registerLevelCallbacks(socket); |     registerLevelCallbacks(socket); | ||||||
|  |     registerQuestCallbacks(socket); | ||||||
|      |      | ||||||
|     socket.io = game.socketIO = io; |     socket.io = game.socketIO = io; | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user