private void FinishContainerAction() { ContainerPoint cp = goal.GetComponent <ContainerPoint>(); cp.Close(); if (null == cp) { Debug.LogError("not a ContainerPoint object!"); } if (cp.prefab == null) { return; } if (carriedItem != null) { DestroyImmediate(carriedItem.gameObject); carriedItem = null; } Waypoint wp = goal.GetComponent <Waypoint>(); switch (wp.damage) { case DamageType.REPAIR_MECHANIC: PlaySound(Speech.WERKZEUG_ERHALTEN); break; case DamageType.REPAIR_BATTERY: PlaySound(Speech.BATTERIE_ERHALTEN); break; case DamageType.REPAIR_BERYLLIUM: PlaySound(Speech.BERYLLIUMKUGEL_ERHALTEN); break; case DamageType.REPAIR_FLUX: PlaySound(Speech.FLUX_COMPENSATOR_ERHALTEN); break; default: case DamageType.REPAIR_WELD: case DamageType.REPAIR_NONE: break; } GameObject item = Instantiate(cp.prefab, this.transform); carriedItem = item.GetComponent <RepairItem>(); state = RobotState.MOVE_TO_DAMAGE; goal = null; }
private void StartContainerAction() { ContainerPoint cp = goal.GetComponent <ContainerPoint>(); cp.Open(); if (null == cp) { Debug.LogError("not a ContainerPoint object!"); } if (cp.prefab == null) { return; } if (carriedItem != null) { DestroyImmediate(carriedItem.gameObject); carriedItem = null; } Waypoint wp = goal.GetComponent <Waypoint>(); switch (wp.damage) { case DamageType.REPAIR_MECHANIC: PlaySound(Speech.WERKZEUG); break; case DamageType.REPAIR_BATTERY: PlaySound(Speech.BATTERIE); break; case DamageType.REPAIR_BERYLLIUM: PlaySound(Speech.BERYLLIUMKUGEL); break; case DamageType.REPAIR_FLUX: PlaySound(Speech.FLUX_COMPENSATOR); break; default: case DamageType.REPAIR_WELD: case DamageType.REPAIR_NONE: break; } }