我试着在戈多做一个简单的游戏,那里有一堵墙倒下了,玩家不得不躲开它。这堵墙是一个带有雪碧和CollisionShape2D的CollisionShape2D。该播放器是一个KinematicBody2D与雪碧和CollisionShape2D附加。主场景是一个Node2D,玩家和墙壁都是它的孩子。我已经设法让播放器检测碰撞,但是当我发出一个信号(连接到墙壁脚本)时,墙什么也不做。我已经尝试过在播放器脚本中使用body_entered信号,但是什么都没有发生。有人知道怎么解决这个问题吗?
我的玩家剧本:
extends KinematicBody2D
var speed = 1300
var
我正在用Java编写一个轰炸机,下面是一个教程(这是我的第一个游戏)。本教程建议使用以下代码来检测冲突。
for (int p=0; p<entities.size(); p++) {
for (int s=p+1; s<entities.size(); s++) {
Entity me = (Entity) entities.get(p);
Entity him = (Entity) entities.get(s);
if (me.collid
我还是不知道在这种情况下该怎么办.
我试着开发一个简单的迷宫游戏,你不能碰墙,否则你会输。
我已经创建了一个player类,并在主类中使用stage.addChild(player)添加了一个子类。
我还在舞台上画了一个墙壁物体.当我运行这个游戏的时候,它说当然是walls is an undefined property。那么我该如何解释这个“最终”的墙在类播放器中的存在--> this.hitTestObject(XXX)
我有一个使用画布html元素的2D地图,我已经画了一个红色的正方形作为玩家,并在它下面画了一堵浅蓝色的墙。我想知道如何检测玩家(红色方块)是否正在触摸墙壁(浅蓝色)。我没有任何类或任何东西,只是使用画布元素绘制具有设置位置的正方形。 代码: var ctx = document.getElementById("canvas").getContext('2d')
document.getElementById("canvas").tabIndex = 1;
// quick way to get focus so keypresses regis
我有一个游戏,其中地图/背景是由预制板组成的。我的播放器和预制板都有刚体和对撞机。它们都没有触发检查,并且预制结构将碰撞检测设置为连续动态。播放器的碰撞检测设置为连续。每个预制板都有一个网格碰撞器,预制板的各个墙都有盒子碰撞器(没有设置为触发)。我一直在用Unity Remote 5在我的手机上测试它,每次我移动播放器的时候,它都会穿过墙壁。如果任何人有任何关于如何防止我的球员穿墙的建议,我将非常感谢!
我的动作脚本是:
public class Movement : MonoBehaviour
{
private Touch touch;
private fl
我正在努力弄清楚如何检测绘制在不同画布层上的资产上的冲突。我制作了两个数组,用来保存我想要与之“碰撞”的东西,名为collidable_objects_layer1和collidable_objects_layer2。这些数组基本上画出了字符不能通过的表和后面的墙。
bar.js基本上保存了你在下面链接中看到的整个条形“场景”。而main.js是让我的玩家移动的循环。我认为我的体系结构都搞砸了,因为我不认为将这两者联系在一起很容易,所以对此有任何建议(模块在这里是必需的还是它们只是伤害了我?)现在我不知道如何用不同的碰撞测试添加更多的“场景”。
我假设碰撞测试发生在主循环中
function
当对象与墙碰撞时,它不能通过,但一些精灵可以通过。当墙在右侧时,碰撞可以正常工作,但当从另一种方式接近时,对象的一部分会发生碰撞。
我对不同的物体有不同的碰撞代码,所以这可能不是问题。原因是不同的对象对碰撞的反应不同,它们的移动也不同。
由用户控制的角色的事件
hor = keyboard_check(ord("D"))-keyboard_check(ord("A"));
ver = keyboard_check(ord("S"))-keyboard_check(ord("W"));
if (place_meeting(x+(ho