저는 Bomberman을 게임처럼 화합시키고 동시에 C#을 배우려고합니다.bool 변수가 단일체로 바뀌지 않습니다. 3d
내 코드에서 targetDestroyed1의 VAR의 부울 값을 변경하려고하지만 문제가있는 것 같습니다 ..
문제 : 객체가 설립 된 GetNearestTaggedObject1에 는 targetDestroyed1 사실이된다.
private bool targetDestroyed1;
void Start(){
OriginXplosion = new Vector3(transform.position.x, transform.position.y, transform.position.z);
InstantiateFire();
}
void Update(){
if (target1 != null) {
Destroy (target1);
}
public void InstantiateFire(){
FireRate = player_actions.FireRate;
FireRate -= 1;
targetDestroyed1 = false;
for(int i1= 0; i1 <= FireRate; i1++){
float i1_axeZ= transform.position.z + i1;
if(i1_axeZ <= 7)
{
if (!targetDestroyed1)
{
Instantiate (ParticulesFeu, Axe1[i1].transform.position, ParticulesFeu.transform.rotation);
ScanForTarget1();
}
}
}
Destroy (gameObject);
}
void ScanForTarget1(){
target1 = GetNearestTaggedObject1();
}
GameObject GetNearestTaggedObject1(){
float nearestDistanceSqr= 0.2f;
GameObject[] taggedGameObjects= GameObject.FindGameObjectsWithTag(searchTag);
foreach(GameObject obj in taggedGameObjects) {
Vector3 objectPos= obj.transform.position;
float distanceSqr= (objectPos - transform.position).sqrMagnitude;
if (distanceSqr < nearestDistanceSqr) {
target1 = obj;
targetDestroyed1 = true;
nearestDistanceSqr = distanceSqr;
}
}
return target1;
}
}
여러분의 도움에 감사드립니다 :하지만 InstantiateFire()의 경우 (! targetDestroyed1) 상태에서 targetDestroyed1는 항상 false를 유지하고 인스턴스화 여기
정지
대신 계속하는 것은 내 코드입니다! 당신의InstantiateFire
방법에
'targetDestroyed1'을 (를) 사용하는 것이 좋습니다. 'if (distanceSqr
Ergwun