forked from noxious/server
worked on wall logics
This commit is contained in:
@ -10,6 +10,7 @@ interface IZoneLoad {
|
||||
width: number;
|
||||
height: number;
|
||||
tiles: number[][];
|
||||
walls: number[][];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -21,6 +22,8 @@ export default function (socket: TSocket, io: Server) {
|
||||
socket.on('gm:zone_editor:zone:save', async (data: IZoneLoad) => {
|
||||
console.log(`---GM ${socket.character?.id} has saved zone via zone editor.`);
|
||||
|
||||
console.log(data);
|
||||
|
||||
if (!data.zoneId) {
|
||||
console.log(`---Zone id not provided.`);
|
||||
return;
|
||||
@ -38,7 +41,8 @@ export default function (socket: TSocket, io: Server) {
|
||||
data.name,
|
||||
data.width,
|
||||
data.height,
|
||||
data.tiles
|
||||
data.tiles,
|
||||
data.walls
|
||||
);
|
||||
|
||||
zone = await ZoneRepository.getById(data.zoneId);
|
||||
|
@ -33,14 +33,15 @@ class ZoneRepository {
|
||||
}
|
||||
}
|
||||
|
||||
async create(name: string, width: number, height: number, tiles: any): Promise<Zone> {
|
||||
async create(name: string, width: number, height: number, tiles: number[][], walls: number[][]): Promise<Zone> {
|
||||
try {
|
||||
return await prisma.zone.create({
|
||||
data: {
|
||||
name: name,
|
||||
width: width,
|
||||
height: height,
|
||||
tiles: tiles
|
||||
tiles: tiles,
|
||||
walls: walls,
|
||||
}
|
||||
});
|
||||
} catch (error: any) {
|
||||
@ -49,7 +50,7 @@ class ZoneRepository {
|
||||
}
|
||||
}
|
||||
|
||||
async update(id: number, name: string, width: number, height: number, tiles: any): Promise<Zone> {
|
||||
async update(id: number, name: string, width: number, height: number, tiles: number[][], walls: number[][]): Promise<Zone> {
|
||||
try {
|
||||
return await prisma.zone.update({
|
||||
where: {
|
||||
@ -59,7 +60,8 @@ class ZoneRepository {
|
||||
name: name,
|
||||
width: width,
|
||||
height: height,
|
||||
tiles: tiles
|
||||
tiles: tiles,
|
||||
walls: walls,
|
||||
}
|
||||
});
|
||||
} catch (error: any) {
|
||||
|
@ -16,6 +16,17 @@ class ZoneService
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
||||
], [
|
||||
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0],
|
||||
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
||||
])
|
||||
console.log("Demo zone created.");
|
||||
return true;
|
||||
|
Reference in New Issue
Block a user