void initilzing() { // set enter direction pool mark_direction_practice_enter_direction_person create_initial_direction_pool = wooden_fence.GetComponent <mark_direction_practice_enter_direction_person> (); create_initial_direction_pool.create_initial_direction_pool_for_each_map(); // create_goal_table mark_direction_practice_goalTable_personImage create_goal_table = wooden_fence.GetComponent <mark_direction_practice_goalTable_personImage> (); create_goal_table.create_goal_table(); // load_person_image mark_direction_practice_goalTable_personImage load_person_image = wooden_fence.GetComponent <mark_direction_practice_goalTable_personImage> (); load_person_image.load_person_image(); // load response cue one_two_three = (Texture2D)Resources.Load("123"); one_three_two = (Texture2D)Resources.Load("132"); two_one_three = (Texture2D)Resources.Load("213"); two_three_one = (Texture2D)Resources.Load("231"); three_one_two = (Texture2D)Resources.Load("312"); three_two_one = (Texture2D)Resources.Load("321"); cue_list.Add(one_two_three); cue_list.Add(one_three_two); cue_list.Add(two_one_three); cue_list.Add(two_three_one); cue_list.Add(three_one_two); cue_list.Add(three_two_one); Instantiate(FPScontroller, Vector3.zero, Quaternion.Euler(0, 0, 0)); Instantiate(wooden_fence, new Vector3(reference_coordinate_x, 0, reference_coordinate_z), Quaternion.Euler(0, 0, 0)); for (int i = 0; i < 34; i++) { if (i == 0) { new_coordinate_x = reference_coordinate_x; new_coordinate_z = reference_coordinate_z; Instantiate(wooden_fence, new Vector3(new_coordinate_x, 0.0f, new_coordinate_z), Quaternion.Euler(0, fence_rotation, 0)); } if (i != 0) { fence_rotation = fence_rotation + RotateAngle_for_fence; if (i == 1) { new_coordinate_x = reference_coordinate_x; new_coordinate_z = reference_coordinate_z + 4.6f; Instantiate(wooden_fence, new Vector3(reference_coordinate_x, 0.0f, new_coordinate_z), Quaternion.Euler(0, fence_rotation, 0)); } if (i > 1) { new_coordinate_x = new_coordinate_x + 4.6f * Mathf.Sin(((fence_rotation - RotateAngle_for_fence) * Mathf.PI) / 180); new_coordinate_z = new_coordinate_z + 4.6f * Mathf.Cos(((fence_rotation - RotateAngle_for_fence) * Mathf.PI) / 180); Instantiate(wooden_fence, new Vector3(new_coordinate_x, 0.0f, new_coordinate_z), Quaternion.Euler(0, fence_rotation, 0)); } } } }
void prepare_to_walk() { Destroy(canvasobject); Destroy(canvas); // get direction & subject init location if (exp_stage == 1) { which_map = practice_formal_stage1_DataSet[trial_ith_formal_exp_stage1][0]; which_direction = practice_formal_stage1_DataSet[trial_ith_formal_exp_stage1][1]; Number_of_person_move_head = int.Parse(practice_formal_stage1_DataSet[trial_ith_formal_exp_stage1][3]); } if (exp_stage == 2) { which_map = practice_formal_stage2_DataSet[trial_ith_formal_exp_stage2][0]; which_direction = practice_formal_stage2_DataSet[trial_ith_formal_exp_stage2][1]; which_person = practice_formal_stage2_DataSet[trial_ith_formal_exp_stage2][2]; Number_of_person_move_head = int.Parse(practice_formal_stage2_DataSet[trial_ith_formal_exp_stage2][4]); } if (exp_stage == 3) { which_map = practice_formal_stage3_DataSet[trial_ith_formal_exp_stage3][0]; which_direction = practice_formal_stage3_DataSet[trial_ith_formal_exp_stage3][1]; which_person = practice_formal_stage3_DataSet[trial_ith_formal_exp_stage3][2]; Number_of_person_move_head = int.Parse(practice_formal_stage3_DataSet[trial_ith_formal_exp_stage3][4]); } // order for head move & distance to center for head move headmovement_order = new List <string>(); headmovement_order.Add("head_cartoon_person_1"); headmovement_order.Add("head_cartoon_person_2"); headmovement_order.Add("head_cartoon_person_3"); headmovement_order = ShuffleList(headmovement_order); if (Number_of_person_move_head == 0) { distance_to_center_showing_motion_1 = 0; distance_to_center_showing_motion_2 = 0; distance_to_center_showing_motion_3 = 0; } if (Number_of_person_move_head == 1) { distance_to_center_showing_motion_1 = UnityEngine.Random.Range(8, 14f); distance_to_center_showing_motion_2 = 0; distance_to_center_showing_motion_3 = 0; } if (Number_of_person_move_head == 2) { distance_to_center_showing_motion_1 = UnityEngine.Random.Range(11.25f, 14f); distance_to_center_showing_motion_2 = UnityEngine.Random.Range(8, 11.25f); distance_to_center_showing_motion_3 = 0; } if (Number_of_person_move_head == 3) { distance_to_center_showing_motion_1 = UnityEngine.Random.Range(8, 10.3f); distance_to_center_showing_motion_2 = UnityEngine.Random.Range(10.3f, 12.1f); distance_to_center_showing_motion_3 = UnityEngine.Random.Range(12.1f, 14f); } // place map (person position) mark_direction_practice_item_subject_person place_person_map = wooden_fence.GetComponent <mark_direction_practice_item_subject_person>(); place_person_map.place_person_map(); // set subject start position mark_direction_practice_enter_direction_person get_direcion_pool = wooden_fence.GetComponent <mark_direction_practice_enter_direction_person> (); direction_list = get_direcion_pool.setup_enter_direction_pool(); subject_initial_position = direction_list.ElementAt(int.Parse(which_direction) - 1); // start animation mark_direction_practice_item_subject_person start_idle = wooden_fence.GetComponent <mark_direction_practice_item_subject_person>(); start_idle.start_idle(); // person facing to subject mark_direction_practice_item_subject_person person_face_to_initial_position = wooden_fence.GetComponent <mark_direction_practice_item_subject_person>(); person_face_to_initial_position.person_face_to_initial_position(); // subject move and forward FirstPersonController.m_CharacterController.transform.position = subject_initial_position; FirstPersonController.m_Camera.transform.localRotation = Quaternion.Euler(0, 0, 0); FirstPersonController.m_Camera.fieldOfView = 90; FirstPersonController.m_CharacterController.transform.forward = (subject_response_position - subject_initial_position).normalized; if ((isIn_formal_exp_stage1 & trial_ith_formal_exp_stage1 < 2) | (isIn_formal_exp_stage2 & trial_ith_formal_exp_stage2 < 2)) { isPausing_inst_walkingStart = true; } else { Invoke("runStart_init", 0); } }