C#项目帮助 [英] C# Project help

查看:90
本文介绍了C#项目帮助的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嘿那里!我在使用这段代码时遇到了麻烦: 

Hey there! I'm  having trouble with this bit of code: 

它应该做的是将数字更新为数组,然后与unity pre-fabs一起使用以生成地图。它似乎忽略了更新数组的4和5的代码,我想知道是否有人知道为什么?

What it's supposed to do is update numbers to an array thats then used with unity pre-fabs to generate a map. it seems to be ignoring the code that updates 4's and 5's to the array, i was wondering if anyone knows why?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;




public class MapCreate : MonoBehaviour {

public int[,] GridArray = new int[30, 50];
public int rows = 30;
public int columns = 40;  
public Transform EnemyPrefab; 
public Transform BoardTileOne;
public Transform BoardTileTwo;
private List <Vector3> gridPositions = new List <Vector3> (); 
private Transform boardHolder;

public void Main()
{
//InitialiseList();
BoardData();
BoardCreate();

}
 







public void BoardCreate()
{



for (int x = 1; x < 40; x++)
{
for (int y = 1; y < 30; y++) {

if (GridArray[y, x] == 0)

Instantiate (BoardTileOne, new Vector3 (x, y, 0), Quaternion.identity);

}
}


for (int x = 1; x < 40; x++) {
for (int y = 1; y < 30; y++) {

if (GridArray [y, x] == 5) 
Instantiate (EnemyPrefab, new Vector3 (x, y, 0), Quaternion.identity);

}
}

for (int x = 1; x < 40; x++) {
for (int y = 1; y < 30; y++) {

if (GridArray [y, x] == 4) 
Instantiate (BoardTileTwo, new Vector3 (x, y, 0), Quaternion.identity);

}
}
}









public void BoardData()
{
//Fills the grid with empty space
for (int x = 1; x < columns - 1; x++) {
for (int y = 1; y < rows - 1; y++) {
GridArray [y, x] = UnityEngine.Random.Range (0, 2);

}
} 

for (int x = 6; x < columns - 36; x++) {
for (int y = 6; y < rows - 5; y++) {
// if (GridArray [y, x] == 1) {
GridArray [y, x] = 4;
// }
}

}

for (int x = 26; x < columns - 15; x++) {
for (int y = 6; y < rows - 5; y++) {
// if (GridArray [y, x] == 1) {
GridArray [y, x] = 5;
// }
}

}


for (int x = 6; (x < columns - 36); x++) {
for (int y = 6; y < rows - 5; y++) {
if (GridArray [y, x] == 2) {
GridArray [y, x] = 1;
}
}

}

//Walls
for (int x = 1; x < 50; x++) {
GridArray [1, x] = 0;
}
for (int x = 1; x < 30; x++) {
GridArray [x, 1] = 0;
GridArray [x, 39] = 0;
}
//Paths
for (int x = 2; x < 29; x++) {
// GridArray [x, 2] = 8;
// GridArray [x, 3] = 8;
// GridArray [x, 4] = 8;
//// GridArray [x, 5] = 8;
//// GridArray [x, 35] = 8;
// GridArray [x, 36] = 8;
// GridArray [x, 37] = 8;
// GridArray [x, 38] = 8;
}
for (int x = 2; x < 29; x++) {
GridArray [x, 2] = 8;
GridArray [x, 3] = 8;
GridArray [x, 4] = 8;
// GridArray [x, 5] = 8;
// GridArray [x, 35] = 8;
GridArray [x, 36] = 8;
GridArray [x, 37] = 8;
GridArray [x, 38] = 8;
}
for (int x = 2; x < 38; x++) {
GridArray [2, x] = 8;
// GridArray [3, x] = 8;
GridArray [4, x] = 8;
GridArray [5, x] = 8;
GridArray [25, x] = 8;
GridArray [26, x] = 8;
// GridArray [27, x] = 8;
GridArray [28, x] = 8;
}



}


}

推荐答案

请编辑你的帖子并使用代码块

Please edit your post and use code blocks


这篇关于C#项目帮助的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆