mirror of
https://gitee.com/jisol/jisol-game/
synced 2025-10-09 00:26:11 +00:00
update
This commit is contained in:
55
JisolGameCocos/assets/script/WorldCanvas.ts
Normal file
55
JisolGameCocos/assets/script/WorldCanvas.ts
Normal file
@@ -0,0 +1,55 @@
|
||||
import { _decorator, Component, instantiate, Node, Prefab } from 'cc';
|
||||
import { JNFrameInfo, JNSyncFrameEvent } from '../../extensions/ngame/assets/ngame/sync/frame/JNSyncFrame';
|
||||
import { app } from './App';
|
||||
import { JNSyncAction } from '../../extensions/ngame/assets/ngame/sync/JNSyncAction';
|
||||
import { Camera } from 'cc';
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
@ccclass('WorldCanvas')
|
||||
export class WorldCanvas extends Component {
|
||||
|
||||
@property(Node)
|
||||
root:Node = null;
|
||||
@property(Camera)
|
||||
camera:Camera = null;
|
||||
|
||||
@property(Prefab)
|
||||
prefab:Prefab = null;
|
||||
|
||||
async onLoad(){
|
||||
|
||||
//重置相机位置
|
||||
this.camera.node.setWorldPosition(0,0,1000);
|
||||
|
||||
//监听帧同步
|
||||
app.event.on(JNSyncFrameEvent.CLEAR,this.clear,this);
|
||||
app.event.on(JNSyncFrameEvent.CREATE,this.create,this);
|
||||
|
||||
//监听帧回调
|
||||
app.socket.on(JNSyncAction.NSyncFrameBack,this.onFrameBack,this,"JNFrameInfo");
|
||||
|
||||
app.sync.onReset();
|
||||
app.sync.onStart();
|
||||
|
||||
}
|
||||
|
||||
//清除世界
|
||||
clear(){
|
||||
this.root.removeAllChildren();
|
||||
}
|
||||
|
||||
//创建世界
|
||||
create(){
|
||||
this.root.addChild(instantiate(this.prefab))
|
||||
}
|
||||
|
||||
update(deltaTime: number) {
|
||||
app.sync.update(deltaTime);
|
||||
}
|
||||
|
||||
onFrameBack(info:JNFrameInfo){
|
||||
app.sync.addFrame(info,true);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user