新增input类 用于管理触摸点信息

This commit is contained in:
YHH
2020-06-19 22:43:56 +08:00
parent 9bd5a99c81
commit 60646edd6b
12 changed files with 540 additions and 15 deletions

View File

@@ -102,14 +102,17 @@ class Main extends eui.UILayer {
let player = scene.createEntity("player");
player.addComponent(new SpriteRenderer()).setSprite(sprite).setColor(0xFF0000);
player.addComponent(new SpawnComponent(EnemyType.worm));
player.addComponent(new Mover());
player.addComponent(new PlayerController());
player.addComponent(new FollowCamera(player));
player.addComponent(new BoxCollider());
for (let i = 0; i < 20; i ++){
let sprite = new Sprite(RES.getRes("checkbox_select_disabled_png"));
let player2 = scene.createEntity("player2");
player2.addComponent(new SpriteRenderer()).setSprite(sprite);
player2.transform.position = new Vector2(Math.random() * 100 * i, Math.random() * 100 * i);
player2.addComponent(new BoxCollider());
}
// Main.emitter.addObserver(CoreEmitterType.Update, ()=>{

View File

@@ -1,6 +1,7 @@
class PlayerController extends Component {
private down: boolean = false;
private touchPoint: Vector2 = Vector2.zero;
private mover: Mover;
public onAddedToEntity(){
this.entity.scene.stage.addEventListener(egret.TouchEvent.TOUCH_BEGIN, this.touchBegin, this);
@@ -19,10 +20,17 @@ class PlayerController extends Component {
}
public update(){
if (!this.mover)
this.mover = this.entity.getComponent<Mover>(Mover);
if (!this.mover)
return;
if (this.down){
let camera = SceneManager.getActiveScene().camera;
let worldVec = camera.screenToWorldPoint(this.touchPoint);
this.entity.position = Vector2.lerp(this.entity.position, worldVec, Time.deltaTime);
this.mover.move(Input.touchPositionDelta);
console.log(Input.touchPositionDelta);
}
}
}