1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- using UnityEngine;
- using System.Collections;
- public class Capsule : MonoBehaviour {
- private float startTime;
- private float startY = 30f;
- private bool isOpen = false;
- private CraftData craftData;
- private CraftEquipModify equipModify;
- private Craft swapCraft;
- private int swapId;
- public Animation animation;
- // Use this for initialization
- void Start ()
- {
- Vector3 position = transform.localPosition;
- position.y = startY;
- transform.localPosition = position;
- startTime = GameTime.time;
- }
- public void SetData(CraftData data, CraftEquipModify equipModify)
- {
- this.craftData = data;
- this.equipModify = equipModify;
- transform.position = data.position;
- }
- public void SetSwap(Craft swapCraft, int swapId, CraftEquipModify equipModify)
- {
- this.swapCraft = swapCraft;
- this.swapId = swapId;
- this.equipModify = equipModify;
- }
-
- // Update is called once per frame
- void Update ()
- {
- float currentTime = GameTime.time;
- float deltaTime = currentTime - startTime;
- if(deltaTime < 1f)
- {
- Vector3 position = transform.localPosition;
- position.y = startY*(1f-deltaTime);
- transform.localPosition = position;
- }
- else if(!isOpen)
- {
- isOpen = true;
- animation.Play("Open");
- if(craftData != null)
- {
- BattleSession battleSession = Session.GetInstance().GetBattleSession();
- try
- {
- Craft craft = battleSession.GetBattleController().CreateCraft(craftData, equipModify);
- }
- catch(System.Exception e)
- {
- Debuger.LogException (e);
- }
- }
- else
- {
- CraftFactory.SwapModel(swapCraft, swapId, equipModify);
- if(swapCraft.IsCtrl())
- Session.GetInstance().GetBattleSession().GetBattleController().battleUI.powerIconContainer.SetCraft(swapCraft);
- transform.SetParent(null);
- }
- }
- else if(isOpen)
- {
- if(!animation.isPlaying)
- {
- Destroy(this.gameObject);
- }
- }
- }
- }
|