示例#1
0
 // Update is called once per frame
 void Update()
 {
     if (Input.GetKeyDown(KeyCode.S))
     {
         effectFactory.CreateEffect(color, life, speed);
     }
 }
示例#2
0
    private void CreateEffects()
    {
        int count = abilityData.effectData.Count;

        for (int i = 0; i < count; i++)
        {
            Effect newEffect = EffectFactory.CreateEffect(this, abilityData.effectData[i]);
            EffectManager.AddEffect(newEffect);
        }
    }
示例#3
0
        public override void OnEffectTest()
        {
            EffectInfoData    effect_info = new EffectInfoData(GameTargetType.OPPO_ONE, EFFECT_TYPE.StayAliveEffect, "2", "");
            EffectBase        effect      = EffectFactory.CreateEffect(effect_info);
            List <GamePlayer> targets     = null;

            targets = test_players;
            if (targets != null)
            {
                effect.TakeEffect(test_players[0], targets, effect_info.EffectParam1, effect_info.EffectParam2);
            }
            Assert.IsTrue(test_players[0].Role.CurrentHP == 1);
        }
        public override void OnEffectTest()
        {
            EffectInfoData    effect_info = new EffectInfoData(GameTargetType.OPPO_ONE, EFFECT_TYPE.StaySpElmtPropEffect, "FIRE", "");
            EffectBase        effect      = EffectFactory.CreateEffect(effect_info);
            List <GamePlayer> targets     = null;

            targets = test_players;
            if (targets != null)
            {
                effect.TakeEffect(test_players[0], targets, effect_info.EffectParam1, effect_info.EffectParam2);
            }
            Assert.IsTrue(test_players[0].Role.IsStaySpElmtProp && test_players[0].Role.StaySpElmtProp == ELEMENT_PROPERTY.FIRE);
        }
        public override void OnEffectTest()
        {
            EffectInfoData    effect_info = new EffectInfoData(GameTargetType.OPPO_ONE, EFFECT_TYPE.ChangeSpeedCntEffect, "10", "");
            EffectBase        effect      = EffectFactory.CreateEffect(effect_info);
            List <GamePlayer> targets     = null;

            targets = test_players;
            if (targets != null)
            {
                effect.TakeEffect(test_players[0], targets, effect_info.EffectParam1, effect_info.EffectParam2);
            }
            Assert.IsTrue(test_players[0].Role.CurrentSpeed - (initSpeed + 10) + 0.00001 < 0.0001);
        }
        public override void OnEffectTest()
        {
            EffectInfoData    effect_info = new EffectInfoData(GameTargetType.OPPO_ONE, EFFECT_TYPE.GainSpCardEffect, "2", "");
            EffectBase        effect      = EffectFactory.CreateEffect(effect_info);
            List <GamePlayer> targets     = null;

            targets = test_players;
            if (targets != null)
            {
                effect.TakeEffect(test_players[0], targets, effect_info.EffectParam1, effect_info.EffectParam2);
            }
            // !!!
            // 暂未实现
            Assert.IsTrue(true);
        }
示例#7
0
        public override void OnEffectTest()
        {
            EffectInfoData    effect_info = new EffectInfoData(GameTargetType.OPPO_ONE, EFFECT_TYPE.TransferJustAcquiredAssetEffect, "MAGIC_POINT", "FIRE");
            EffectBase        effect      = EffectFactory.CreateEffect(effect_info);
            List <GamePlayer> targets     = null;

            targets = test_players;
            if (targets != null)
            {
                effect.TakeEffect(test_players[0], targets, effect_info.EffectParam1, effect_info.EffectParam2);
            }
            // !!!
            // 暂未实现
            Assert.IsTrue(true);
        }
示例#8
0
        /// <summary>
        /// 创建Effect
        /// </summary>
        /// <returns></returns>
        private IEnumerator AsyncCreateEffects()
        {
            System.Diagnostics.Stopwatch stopWatch = new System.Diagnostics.Stopwatch();
            while (true)
            {
                yield return(null);

                stopWatch.Reset();
                stopWatch.Start();
                while (m_loadingEffectList.Count > 0)
                {
                    EffectList effectList = m_loadingEffectList.Dequeue();
                    App.SoundManager.RegisterAudioAttrList(effectList.EffectPack.AudioAttrs);                       //播放音效

                    for (int j = effectList.Effects.Count; j < effectList.EffectPack.Attributes.Count; j++)
                    {
                        Effect effect = EffectFactory.CreateEffect();                                               //创建Effect
                        App.ObjectPoolManager.RegisteObject(effectList.EffectPack.Attributes[j].EffectName, effectList.EffectPack.Attributes[j].EffectPath, 0, 30, -1);
                        App.ObjectPoolManager.Instantiate(effectList.EffectPack.Attributes[j].EffectName, (GameObject obj) =>
                        {
                            obj.SetActive(false);
                            effect.Init(obj);
                            effectList.Effects.Add(effect);
                        });
                        if (effectList.EffectPack.IsPlaySync == false)
                        {
                            if (stopWatch.ElapsedMilliseconds > m_maxCoroutineMilliseconds)
                            {
                                stopWatch.Stop();
                                yield return(null);

                                stopWatch.Reset();
                                stopWatch.Start();
                            }
                        }
                        effectList.IsLoading = false;
                    }
                }
                stopWatch.Stop();
            }
        }
示例#9
0
    public IEnumerator PlayAmplifyEffect(float sec)
    {
        yield return(new WaitForSeconds(sec));

        var pos = transform.position;

        EffectFactory.CreateEffect("effects_tex/prefab/bossStart.prefab", eff =>
        {
            if (gameObject == null)
            {
                eff.transform.position = pos;
            }
            else
            {
                eff.transform.SetParent(transform, false);
            }
            eff.gameObject.SetRendererOrderSort(SortingOrder.Top);
            Sound.PlayUiAudioOneShot(110);
            eff.AutoDestory();
        });
    }
示例#10
0
        void InitialiseEffect()
        {
            EffectFactory effectFactory = _effectContext.Factory;

            if (_effect != null)
            {
                _effect.Release();
            }

            switch (CurrentEffect)
            {
            case Resource.Id.none:
            case Resource.Id.duotone:
            case Resource.Id.tint:
                break;

            case Resource.Id.autofix:
                _effect = effectFactory.CreateEffect(EffectFactory.EffectAutofix);
                _effect.SetParameter("scale", 0.5f);
                break;

            case Resource.Id.bw:
                _effect = effectFactory.CreateEffect(EffectFactory.EffectBlackwhite);
                _effect.SetParameter("black", 0.1f);
                _effect.SetParameter("white", 0.7f);
                break;

            case Resource.Id.brightness:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectBrightness);
                _effect.SetParameter("brightness", 2.0f);
                break;

            case Resource.Id.contrast:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectContrast);
                _effect.SetParameter("contrast", 1.4f);
                break;

            case Resource.Id.crossprocess:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectCrossprocess);
                break;

            case Resource.Id.documentary:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectDocumentary);
                break;

            //			case Resource.Id.duotone:
            //				_effect = effectFactory.CreateEffect (
            //					EffectFactory.EffectDuotone);
            //				_effect.SetParameter ("first_color", 4293982463u);
            //				_effect.SetParameter ("second_color", 4289309097u);
            //				break;

            case Resource.Id.filllight:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectFilllight);
                _effect.SetParameter("strength", .8f);
                break;

            case Resource.Id.fisheye:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectFisheye);
                _effect.SetParameter("scale", .5f);
                break;

            case Resource.Id.flipvert:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectFlip);
                _effect.SetParameter("vertical", true);
                break;

            case Resource.Id.fliphor:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectFlip);
                _effect.SetParameter("horizontal", true);
                break;

            case Resource.Id.grain:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectGrain);
                _effect.SetParameter("strength", 1.0f);
                break;

            case Resource.Id.grayscale:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectGrayscale);
                break;

            case Resource.Id.lomoish:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectLomoish);
                break;

            case Resource.Id.negative:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectNegative);
                break;

            case Resource.Id.posterize:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectPosterize);
                break;

            case Resource.Id.rotate:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectRotate);
                _effect.SetParameter("angle", 180);
                break;

            case Resource.Id.saturate:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectSaturate);
                _effect.SetParameter("scale", .5f);
                break;

            case Resource.Id.sepia:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectSepia);
                break;

            case Resource.Id.sharpen:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectSharpen);
                break;

            case Resource.Id.temperature:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectTemperature);
                _effect.SetParameter("scale", .9f);
                break;

            //			case Resource.Id.tint:
            //				_effect = effectFactory.CreateEffect (
            //					EffectFactory.EffectTint);
            //				_effect.SetParameter ("tint", Colour.Magenta);
            //				break;

            case Resource.Id.vignette:
                _effect = effectFactory.CreateEffect(
                    EffectFactory.EffectVignette);
                _effect.SetParameter("scale", .5f);
                break;
            }
        }
        public void InitEffect()
        {
            try
            {
                EffectFactory effectFactory = MEffectContext.Factory;
                MEffect?.Release();

                if (MCustomEffect != null)
                {
                    Dictionary <string, Java.Lang.Object> parameters = MCustomEffect.GetParameters();
                    MEffect = effectFactory.CreateEffect(MCustomEffect.GetEffectName());
                    foreach (var param in parameters)
                    {
                        MEffect.SetParameter(param.Key, param.Value);
                    }
                }
                else
                {
                    // Initialize the correct effect based on the selected menu/action item
                    switch (MCurrentEffect)
                    {
                    case PhotoFilter.AutoFix:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectAutofix);
                        MEffect.SetParameter("scale", 0.5f);
                        break;

                    case PhotoFilter.BlackWhite:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectBlackwhite);
                        MEffect.SetParameter("black", .1f);
                        MEffect.SetParameter("white", .7f);
                        break;

                    case PhotoFilter.Brightness:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectBrightness);
                        MEffect.SetParameter("brightness", 2.0f);
                        break;

                    case PhotoFilter.Contrast:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectContrast);
                        MEffect.SetParameter("contrast", 1.4f);
                        break;

                    case PhotoFilter.CrossProcess:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectCrossprocess);
                        break;

                    case PhotoFilter.Documentary:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectDocumentary);
                        break;

                    case PhotoFilter.DueTone:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectDuotone);
                        MEffect.SetParameter("first_color", Color.Yellow.ToArgb());
                        MEffect.SetParameter("second_color", Color.DarkGray.ToArgb());
                        break;

                    case PhotoFilter.FillLight:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectFilllight);
                        MEffect.SetParameter("strength", .8f);
                        break;

                    case PhotoFilter.FishEye:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectFisheye);
                        MEffect.SetParameter("scale", .5f);
                        break;

                    case PhotoFilter.FlipHorizontal:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectFlip);
                        MEffect.SetParameter("horizontal", true);
                        break;

                    case PhotoFilter.FlipVertical:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectFlip);
                        MEffect.SetParameter("vertical", true);
                        break;

                    case PhotoFilter.Grain:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectGrain);
                        MEffect.SetParameter("strength", 1.0f);
                        break;

                    case PhotoFilter.GrayScale:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectGrayscale);
                        break;

                    case PhotoFilter.Lomoish:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectLomoish);
                        break;

                    case PhotoFilter.Negative:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectNegative);
                        break;

                    case PhotoFilter.None:
                        break;

                    case PhotoFilter.Posterize:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectPosterize);
                        break;

                    case PhotoFilter.Rotate:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectRotate);
                        MEffect.SetParameter("angle", 180);
                        break;

                    case PhotoFilter.Saturate:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectSaturate);
                        MEffect.SetParameter("scale", .5f);
                        break;

                    case PhotoFilter.Sepia:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectSepia);
                        break;

                    case PhotoFilter.Sharpen:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectSharpen);
                        break;

                    case PhotoFilter.Temperature:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectTemperature);
                        MEffect.SetParameter("scale", .9f);
                        break;

                    case PhotoFilter.Tint:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectTint);
                        MEffect.SetParameter("tint", Color.Magenta.ToArgb());
                        break;

                    case PhotoFilter.Vignette:
                        MEffect = effectFactory.CreateEffect(EffectFactory.EffectVignette);
                        MEffect.SetParameter("scale", .5f);
                        break;
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
示例#12
0
 void OnCollisionEnter(Collision collisionInfo)
 {
     Debug.Log("hit");
     effectFactory.CreateEffect(color, size, speed);
 }
示例#13
0
        void clientT_Update(GameTime obj)
        {
            NetIncomingMessage msg;

            //try
            //{
            while ((msg = client.ReadMessage()) != null)
            {
                switch (msg.MessageType)
                {
                case NetIncomingMessageType.DiscoveryResponse:
                    //connect to first discovered server
                    client.Connect(msg.SenderEndpoint);
                    break;

                case NetIncomingMessageType.Data:

                    ushort id;
                    string type;
                    byte   fid;
                    Actor  actor;

                    switch ((MessageDataType)msg.ReadByte())
                    {
                    case MessageDataType.GameStarting:
                        clientState = ClientState.Started;
                        break;

                    case MessageDataType.ActorCreated:
                        id   = msg.ReadUInt16();
                        type = msg.ReadString();
                        fid  = msg.ReadByte();

                        var f = getFactionFromID(fid);

                        if (cWorld.GetActorByID(id) == null && !bannedIDs.Contains(id) && f != null)
                        {
                            actor = UnitConverter.CreateActor(type, Vector2.Zero, f);
                            actor.ReadInInitialData(msg);

                            cWorld.AddActor(actor, id);
                        }

                        break;

                    case MessageDataType.ActorUpdate:
                        id = msg.ReadUInt16();

                        if ((actor = cWorld.GetActorByID(id)) != null)
                        {
                            actor.ReadInUpdateData(msg);
                        }
                        break;

                    case MessageDataType.ActorChangeUpdate:
                        id = msg.ReadUInt16();

                        if ((actor = cWorld.GetActorByID(id)) != null)
                        {
                            (actor as IChangeUpdate).ReadInChangeUpdateData(msg);
                        }
                        break;

                    case MessageDataType.ActorPushUpdate:
                        id = msg.ReadUInt16();

                        if ((actor = cWorld.GetActorByID(id)) != null)
                        {
                            (actor as IPushUpdate).ReadInPushUpdateData(msg);
                        }
                        break;

                    case MessageDataType.ActorDestroyed:
                        id = msg.ReadUInt16();
                        if ((actor = cWorld.GetActorByID(id)) != null)
                        {
                            cWorld.RemoveActor(actor);
                        }
                        else
                        {
                            bannedIDs.Add(id);         //prevent actor from being created if creation msg arrives in the future
                        }
                        break;

                    case MessageDataType.ResourceUpdate:
                        PlayerF.Resources.Metal   = msg.ReadFloat();
                        PlayerF.Resources.Crystal = msg.ReadFloat();
                        break;

                    case MessageDataType.PushEffect:
                        type = msg.ReadString();
                        GraphicsEffect effect = EffectFactory.CreateEffect(type);
                        effect.world = cWorld;
                        effect.ReadInInitialData(msg);
                        cWorld.PushEffect(effect);
                        break;

                    case MessageDataType.ResearchUnlocked:
                        var res = msg.ReadString();
                        PlayerF.UnlockResearch(res);
                        break;

                    case MessageDataType.BuildingUnlocked:
                        var build = msg.ReadString();
                        PlayerF.UnlockBuilding(build);
                        break;

                    case MessageDataType.GameOver:
                        gameOver = true;
                        this.clientT.Stop();
                        Console.WriteLine("Game over broham");
                        break;
                    }

                    break;
                }
            }
            //}
            //catch (Exception ex)
            //{
            //    Console.WriteLine("ERROR!! " + ex);
            //}
        }