1. 修正了相机在变焦时不能保持在目标中心的问题

2. 增加检查,以确保碰撞器被触发时enabled也开启
This commit is contained in:
yhh
2020-07-20 13:44:26 +08:00
parent dccd4e21b6
commit e76d5815f2
9 changed files with 44 additions and 11 deletions

View File

@@ -164,8 +164,8 @@ class Camera extends Component {
public update(){
let cameraBounds = new Rectangle(0, 0, SceneManager.stage.stageWidth, SceneManager.stage.stageHeight);
let halfScreen = Vector2.multiply(new Vector2(cameraBounds.width, cameraBounds.height), new Vector2(0.5));
this._worldSpaceDeadZone.x = this.position.x - halfScreen.x + this.deadzone.x + this.focusOffset.x;
this._worldSpaceDeadZone.y = this.position.y - halfScreen.y + this.deadzone.y + this.focusOffset.y;
this._worldSpaceDeadZone.x = this.position.x - halfScreen.x * SceneManager.scene.scaleX + this.deadzone.x + this.focusOffset.x;
this._worldSpaceDeadZone.y = this.position.y - halfScreen.y * SceneManager.scene.scaleY + this.deadzone.y + this.focusOffset.y;
this._worldSpaceDeadZone.width = this.deadzone.width;
this._worldSpaceDeadZone.height = this.deadzone.height;

View File

@@ -29,7 +29,7 @@ class ProjectileMover extends Component {
let neighbors = Physics.boxcastBroadphase(this._collider.bounds, this._collider.collidesWithLayers);
for (let i = 0; i < neighbors.colliders.length; i ++){
let neighbor = neighbors.colliders[i];
if (this._collider.overlaps(neighbor)){
if (this._collider.overlaps(neighbor) && neighbor.enabled){
didCollide = true;
this.notifyTriggerListeners(this._collider, neighbor);
}

View File

@@ -0,0 +1,9 @@
class WebGLUtils {
/**
* 获取webgl context
*/
public static getContext(){
const canvas = document.getElementsByTagName('canvas')[0];
return canvas.getContext('2d');
}
}