public void obs_creates() { for (int i = 0; i < Maps.Count; i++) { ScrollObject Map = (ScrollObject)Maps[i]; Map.xl -= Map.speed * Time.deltaTime; //Map.pos.x -= Map.speed * Time.deltaTime; Maps[i] = Map; if (Map.xl <= 10) { Map.xl += 0.5f * Map.start_scale.x / 2.0f; Map.start_pos.x = Map.xl; if (Map.tag_int == 1) { GameObject go = (GameObject)Instantiate(obs1[Map.kind], Map.start_pos, Map.start_angle); ScrollObject obj_script = go.GetComponent <ScrollObject>(); obj_script.speed = Map.speed; go.transform.localScale = Map.start_scale; go.transform.SetParent(Stage.transform); } else if (Map.tag_int == 2) { GameObject go = (GameObject)Instantiate(obs2[Map.kind], Map.start_pos, Map.start_angle); ScrollObject obj_script = go.GetComponent <ScrollObject>(); obj_script.speed = Map.speed; go.transform.localScale = Map.start_scale; go.transform.SetParent(Stage.transform); } else if (Map.tag_int == 0) { GameObject go = (GameObject)Instantiate(End_obj, Map.start_pos, Map.start_angle); ScrollObject obj_script = go.GetComponent <ScrollObject>(); obj_script.speed = Map.speed; go.transform.localScale = Map.start_scale; go.transform.SetParent(Stage.transform); } Maps.RemoveAt(i); i--; } } for (int i = 0; i < switch_objs.Count; i++) { ScrollObject switch_obj_info = (ScrollObject)switch_objs[i]; switch_obj_info.xl -= switch_obj_info.speed * Time.deltaTime; switch_objs[i] = switch_obj_info; if (switch_obj_info.xl <= 10) { switch_obj_info.start_pos.x = switch_obj_info.xl + 0.5f * (14.363f + 3.408889f) / 2.0f; //switch_obj_info.xl; GameObject switch_obj = (GameObject)Instantiate( switch_gameobj, switch_obj_info.start_pos, switch_obj_info.start_angle); switch_obj.transform.localScale = switch_obj_info.start_scale; switch_obj.transform.SetParent(Stage.transform); ScrollObject scr_sw = switch_obj.GetComponent <ScrollObject>(); scr_sw.speed = switch_obj_info.speed; ArrayList pierce_objs = (ArrayList)switch_objs_in[i]; int cnt = pierce_objs.Count; for (int j = 0; j < cnt; j++) { PierceObject pp = (PierceObject)pierce_objs[j]; GameObject pierce_obj; Debug.Log(pp.start_tag); if (pp.start_tag == "Pierce")//////////////////////////////////// { pierce_obj = (GameObject)Instantiate(pierce_obj_base, pp.start_pos, pp.start_angle); } else { pierce_obj = (GameObject)Instantiate( pierce_gameobjs[pp.tag_int - 1][pp.kind], pp.start_pos, pp.start_angle ); } pierce_obj.transform.localScale = pp.start_scale; pierce_obj.transform.SetParent(switch_obj.transform); pierce_obj.transform.localPosition = pp.start_pos; PierceObject pierce_script = pierce_obj.GetComponent <PierceObject>(); //pierce_script = pp; pierce_script.copy(pp); } switch_objs.RemoveAt(i); switch_objs_in.RemoveAt(i); i--; ////////////////if } } }