Compare commits

..

1 Commits

Author SHA1 Message Date
74176d4995 feat: 限制位移区域。 2022-08-11 18:07:44 +08:00
2 changed files with 37 additions and 14 deletions

View File

@ -7,15 +7,27 @@ export class Client {
room; room;
index; index;
packageIndex = 0; packageIndex = 0;
state = {
x: 0,
y: -887.56,
z: 0,
rotationX: 0,
rotationY: 0,
rotationZ: 0,
animation: 'Running',
nickname: `${this.index}#${this.packageIndex++}`,
characterKey: 'male',
};
constructor(index) { constructor(index) {
this.index = index; this.index = index;
this.delta = { x: Math.floor(Math.random() * 2 - 1) * 3, z: Math.floor(Math.random() * 2 - 1) * 3};
} }
async joinRoom() { async joinRoom() {
this.client = new Colyseus.Client('wss://api-meta.sequenxe.com/socket'); this.client = new Colyseus.Client('wss://forwinmeta.sequenxe.com/api/socket');
this.room = await this.client.joinOrCreate("my_room"); this.room = await this.client.joinOrCreate("MyRoom");
this.room.onStateChange((state) => { this.room.onStateChange((state) => {
if (this.index !== 0) { if (this.index !== 0) {
return; return;
@ -29,16 +41,27 @@ export class Client {
} }
testOnce() { testOnce() {
this.room.send("updatePlayer", { this.state.x = this.delta.x + this.state.x;
x: +Math.random().toFixed(1), this.state.z = this.delta.z + this.state.z;
y: +Math.random().toFixed(1),
z: +Math.random().toFixed(1), if(this.state.x < -800) {
rotationX: +Math.random().toFixed(1), this.delta.x = Math.random() * 5 + 5;
rotationY: +Math.random().toFixed(1), this.state.x += this.delta.x;
rotationZ: +Math.random().toFixed(1), } else if(this.state.x > 800) {
animation: Math.random().toFixed(1), this.delta.x = -(Math.random() * 5 + 5);
nickname: Math.random().toFixed(1), this.state.x += this.delta.x;
characterKey: `${this.index}#${this.packageIndex++}`, };
}); if(this.state.z < -800) {
this.delta.z = Math.random() * 5 + 5;
this.state.z += this.delta.z;
} else if(this.state.z > 800) {
this.delta.z = -(Math.random() * 5 + 5);
this.state.z += this.delta.z;
}
// this.state.nickname = `${this.index}#${this.packageIndex++}`;
this.room.send("updatePlayer", this.state);
} }
} }

BIN
file Normal file

Binary file not shown.