k_wallpaper:vq63zyyfimport { _decorator, Component, EventKeyboard, input, KeyCode, Input, Node, RigidBody, Vec3 } from ‘cc’;
const { ccclass, property } = _decorator;
@ccclass(‘player’)
export class player extends Component {
@property(Vec3)
direction: Vec3 = new Vec3(0, 0, 0);
@property(Node)
player:Node;
public speed:number = 20;
onLoad() {
input.on(Input.EventType.KEY_DOWN, this.onKeyDown, this);
input.on(Input.EventType.KEY_UP, this.onKeyUp, this);
}
start() {
this._init();
}
private _init(){
this.node.setPosition(0,0);
}
onDestroy() {
input.off(Input.EventType.KEY_DOWN, this.onKeyDown, this);
input.off(Input.EventType.KEY_UP, this.onKeyUp, this);
}
update(deltaTime: number) {
this.private_moveleft(deltaTime);
this.private_moveright(deltaTime);
}
private_moveleft(deltaTime:number){
this.node.setPosition(this.node.position.x - this.speed * deltaTime,this.node.position.y);
}
private_moveright(deltaTime:number){
this.node.setPosition(this.node.position.x + this.speed * deltaTime,this.node.position.y);
}
onKeyDown(event: EventKeyboard) {
if (event.keyCode == KeyCode.KEY_A) {
this.node.getPosition();
console.log('Key_Down A');
} else if (event.keyCode == KeyCode.KEY_D) {
this.node.getPosition();
console.log('Key_Down D');
}
}
onKeyUp(event: EventKeyboard) {
if (event.keyCode == KeyCode.KEY_A) {
this.node.getPosition();
console.log('Key_Up A');
} else if (event.keyCode == KeyCode.KEY_D) {
this.node.getPosition();
console.log('Key_Up D');
}
}
}
各位帅气的小哥哥,我想让这个player脚本通过A/D来控制它左右移动。按a一下,它就往左边移动一下,按d就往右移动一下。可是在我的cocos3.8.1上预览的时候没效果,什么都没动。
请求解惑一下。蟹蟹咯!
: 