Ejemplo n.º 1
0
        public GameObject FindTarget(AdvEffectData data)
        {
            switch (data.Target)
            {
            case AdvEffectData.TargetType.MessageWindow:
                return(MessageWindow.gameObject);

            case AdvEffectData.TargetType.Graphics:
                return(Engine.GraphicManager.gameObject);

            case AdvEffectData.TargetType.Camera:
                return(CameraRoot);

            case AdvEffectData.TargetType.Default:
            default:
            {
                AdvGraphicObject obj = engine.GraphicManager.FindObject(data.TargetName);
                if (obj != null && obj.gameObject != null)
                {
                    return(obj.gameObject);
                }
                AdvGraphicLayer layer = engine.GraphicManager.FindLayer(data.TargetName);
                if (layer != null)
                {
                    return(layer.gameObject);
                }
                Transform ui = engine.UiManager.transform.Find(data.TargetName);
                if (ui != null)
                {
                    return(ui.gameObject);
                }
                return(null);
            }
            }
        }
 internal bool IsCommandWaiting(AdvEffectData effectData)
 {
     //今のコマンドがWaitのとき、エフェクトの終了待ちをする
     if (effectData.Wait == AdvEffectData.WaitType.Wait)
     {
         foreach (AdvEffectData effect in currentEffectList)
         {
             if (effect.IsCommandWaiting)
             {
                 return(true);
             }
         }
     }
     return(false);
 }
		public GameObject FindTarget(AdvEffectData data)
		{
			switch (data.Target)
			{
				case AdvEffectData.TargetType.MessageWindow:
					return MessageWindow.gameObject;
				case AdvEffectData.TargetType.Graphics:
					return Engine.GraphicManager.gameObject;
				case AdvEffectData.TargetType.Camera:
						return CameraRoot;
				case AdvEffectData.TargetType.Default:
				default:
					{
						AdvGraphicObject obj = engine.GraphicManager.FindObject(data.TargetName);
						return (obj != null) ? obj.gameObject : null;
					}
			}
		}
        public GameObject FindTarget(AdvEffectData data)
        {
            switch (data.Target)
            {
            case AdvEffectData.TargetType.MessageWindow:
                return(MessageWindow.gameObject);

            case AdvEffectData.TargetType.Graphics:
                return(Engine.GraphicManager.gameObject);

            case AdvEffectData.TargetType.Camera:
                return(CameraRoot);

            case AdvEffectData.TargetType.Default:
            default:
            {
                AdvGraphicObject obj = engine.GraphicManager.FindObject(data.TargetName);
                return((obj != null) ? obj.gameObject : null);
            }
            }
        }
 void OnComplete(AdvEffectData effectData)
 {
     currentEffectList.Remove(effectData);
 }
 public void Play(AdvEffectData effectData)
 {
     currentEffectList.Add(effectData);
     effectData.Play(this, OnComplete);
 }
		internal bool IsCommandWaiting(AdvEffectData effectData)
		{
			//今のコマンドがWaitのとき、エフェクトの終了待ちをする
			if (effectData.Wait == AdvEffectData.WaitType.Wait)
			{
				foreach (AdvEffectData effect in currentEffectList)
				{
					if (effect.IsCommandWaiting)
					{
						return true;
					}
				}
			}
			return false;
		}
		void OnComplete(AdvEffectData effectData)
		{
			currentEffectList.Remove(effectData);
		}
		public void Play(AdvEffectData effectData)
		{
			currentEffectList.Add(effectData);
			effectData.Play(this, OnComplete);
		}