- Home /
Question by
hern · Apr 24, 2014 at 06:34 AM ·
instantiateraycasttouchdestroy
Insatiate and Destroy problem
Hi I'm use C# and this my code
void Awake() {
size = 1;
size1 = 1;
conDB.OpenConnect ();
}
void Start () {
spawning ();
}
// Update is called once per frame
void Update () {
if (Input.touches.Length <= 0) {
} else {
for (j = 0; j<Input.touchCount; j++){
if (Input.GetTouch(j).phase == TouchPhase.Began) {
RaycastHit hit;
Ray ray = Camera.main.ScreenPointToRay (Input.GetTouch(j).position);
if (Physics.Raycast (ray, out hit)) {
if (hit.collider.tag == "Floor") {
Debug.Log ("MISS");
count++;
insert ("Size Right :" + size, "MISS" + count, spawn_position + "", hit.point + "");
insert ("Size Left :" + size1, "MISS" + count, spawn_position + "", hit.point + "");
if (count == 5) {
destroyer();
count = 0;
spawning ();
}
} else if (hit.collider.tag == "Item") {
insert ("Size Right :" + size, "CORRECT", spawn_position + "", hit.point + "");
destroyer();
} else if (hit.collider.tag == "Item1") {
insert ("Size Left :" + size1, "CORRECT", spawn_position + "", hit.point + "");
destroyer();
}
}
}
}
}
}
void spawning(){
rand = Random.Range (1, 4);
if (CountA == 15) {
A = false;
rand = 2;
}
if (CountB == 15) {
rand = 1;
B = false;
}
if (A == false && B == false) {
endgame();
}
if (rand == 1) {
CountA++;
if (CountA <= 15) {
spawnPA ();
}
}
if (rand == 2) {
CountB++;
if(CountB <=15){
spawnPB ();
}
}
if (rand == 3) {
CountA++;
CountB++;
if(CountA <=15 || CountB <=15){
spawnPC();
spawnPCC ();
}
}
}
void spawnPA(){
location = spawnA;
temp_spawn = Instantiate(Button,location.position,location.rotation)as GameObject;
if (usedNumbers.Count <15) {
while (usedNumbers.Contains( size )) {
size = Random.Range (1, 16);
}
}
Debug.Log ("Number0 :"+size);
usedNumbers.Add( size );
resize = startsize - (size * 0.2f);
temp_spawn.transform.localScale = new Vector3 (resize, resize, 0);
temp_spawn.transform.tag = "Item";
}
void spawnPB(){
location1 = spawnB;
temp_spawn1 = Instantiate(Button1,location1.position,location1.rotation) as GameObject;
if (usedNumbers1.Count <15) {
while (usedNumbers1.Contains( size1 )) {
size1 = Random.Range (1, 16);
}
}
Debug.Log ("Number1 :"+size1);
usedNumbers1.Add (size1);
resize1 = startsize1 - (size1 * 0.2f);
temp_spawn1.transform.localScale = new Vector3 (resize1, resize1, 0);
temp_spawn1.transform.tag = "Item1";
}
void spawnPC(){
location = spawnA;
temp_spawn = Instantiate(Button,location.position,location.rotation)as GameObject;
if (usedNumbers.Count < 15) {
while (usedNumbers.Contains( size2 )) {
size2 = Random.Range (1, 16);
}
}
Debug.Log ("Number0 :"+size2);
usedNumbers.Add( size2 );
resize = startsize - (size2 * 0.2f);
temp_spawn.transform.localScale = new Vector3 (resize, resize, 0);
temp_spawn.transform.tag = "Item";
}
void spawnPCC(){
location1 = spawnB;
temp_spawn1 = Instantiate(Button1,location1.position,location1.rotation) as GameObject;
if (usedNumbers1.Count <15) {
while (usedNumbers1.Contains( size3 )) {
size3 = Random.Range (1, 16);
}
}
Debug.Log ("Number1 :"+size3);
usedNumbers1.Add (size3);
resize1 = startsize1 - (size3 * 0.2f);
temp_spawn1.transform.localScale = new Vector3 (resize1, resize1, 0);
temp_spawn1.transform.tag = "Item1";
}
void destroyer(){
Destroy(temp_spawn);
Destroy (temp_spawn1);
spawning ();
}
When rand == 3 it call void spawnPc(); and spawnPCC(); and then the programe is auto destroy.I don't know why.help me pls thank
Comment
Your answer
Follow this Question
Related Questions
Android touch 3d Object event 1 Answer
Can't seem to destroy instantiated objects. 1 Answer
how to raycast instantiated game characters 1 Answer
Destroying object using his name and raycast 2 Answers
ray destroying prefab not clone? 2 Answers