Exemple #1
0
        public void VisitSideEffect(SideEffect side)
        {
            var dt = side.Expression.Accept(asc);

            desc.MeetDataType(side.Expression, dt);
            side.Expression.Accept(desc, side.Expression.TypeVariable);
        }
Exemple #2
0
        private void UpdateScale()
        {
            InitializeTransform();

            fScreenWidth     = GraphicsDevice.Viewport.Width;
            fScreenHeight    = GraphicsDevice.Viewport.Height;
            fScreenRectangle = new Rectangle(0, 0, fScreenWidth, fScreenHeight);
            fWorkTarget      = new RenderTarget2D(GraphicsDevice, fScreenWidth, fScreenHeight, false,
                                                  GraphicsDevice.PresentationParameters.BackBufferFormat,
                                                  DepthFormat.None,
                                                  0,
                                                  RenderTargetUsage.PreserveContents);



            fParticlesSideEffect = new SideEffect(fScreenWidth, fScreenHeight, fEffectParticles);
            fParticlesMouse      = new MyParticles(fScreenWidth, fScreenHeight, fMouseParticles);
            fParticlesDigits     = new DigitEffect(fScreenWidth, fScreenHeight, 50);
            fParticlesSeconds    = new SecondEffect(fScreenWidth, fScreenHeight, 80);
            fParticlesCounter    = new DownCounterEffect(COUNTDOWN, fScreenWidth, fScreenHeight, 50);
            fParticlesEva        = new EvaEffect(fScreenWidth, fScreenHeight, 150);
            fParticlesSideEffect.Particles.ParticleColor = Microsoft.Xna.Framework.Color.Yellow;
            fParticlesMouse.ParticleColor              = Microsoft.Xna.Framework.Color.Red;
            fParticlesDigits.Particles.ParticleColor   = Microsoft.Xna.Framework.Color.Green;
            fParticlesSeconds.Particles1.ParticleColor = Microsoft.Xna.Framework.Color.Cyan;
            fParticlesSeconds.Particles2.ParticleColor = Microsoft.Xna.Framework.Color.Cyan;
            fParticlesEva.Particles[0].ParticleColor   = Microsoft.Xna.Framework.Color.LightSkyBlue;
            fParticlesEva.Particles[1].ParticleColor   = Microsoft.Xna.Framework.Color.LightCoral;
            fParticlesEva.Particles[2].ParticleColor   = Microsoft.Xna.Framework.Color.LightGreen;
            fParticlesEva.Particles[3].ParticleColor   = Microsoft.Xna.Framework.Color.LightPink;
        }
Exemple #3
0
    override protected void doActivate(Targetable target)
    {
        NodeData otherNode = target.GetComponent <NodeData>();
        NodeData thisNode  = getNode();

        EdgeData edge = graphUtility.getConnectingEdge(thisNode, otherNode);

        if (edge.direction == EdgeData.EdgeDirection.Unusable)
        {
            return;
        }

        bool isWin = gen.NextDouble() <= getProbabilityOfWin(target);

        // Take node
        if (isWin)
        {
            graphUtility.CaptureNode(otherNode, thisNode);
        }

        if (effect != null)
        {
            effect.additionalEffect(thisNode, target, isWin);
        }
        effect = null;
    }
Exemple #4
0
 public override void Damage(float dmg, HashSet <string> tags, SideEffect s)
 {
     if (this.TakeDmg != null)
     {
         this.TakeDmg(dmg, tags, s);
     }
 }
    public SideEffect TryApplySideEffect(Ability ability, SideEffect effect, MobaEntity attacker, bool isPasive)
    {
        //TODO: Check here if the effects can be stacked or not
        //for (int i = 0; i < m_appliedEffects.Count; i++)
        //{
        //    if (m_appliedEffects[i].GetType() == effect.GetType())
        //    {
        //        RemoveSideEffect(m_appliedEffects[i]);
        //        break;
        //    }
        //}

        SideEffect newEffect = effect.Clone();

        newEffect.ApplyEffect(ability, attacker, m_mobaEntity);
        if (isPasive)
        {
            m_passiveEffects.Add(newEffect);
        }
        else
        {
            m_appliedEffects.Add(newEffect);
        }
        return(newEffect);
    }
Exemple #6
0
            public async Task <IEnumerable <T> > Handle(SideEffect <T> sideEffect, CancellationToken cancellationToken = default)
            {
                var tasks = sideEffect.EffectList.Select(effect => _interpreter.Interpret(effect, cancellationToken)).ToList();
                await Task.WhenAll(tasks);

                return(tasks.Select(t => t.Result));
            }
Exemple #7
0
        public IHttpActionResult PutSideEffect(int id, SideEffect sideEffect)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != sideEffect.Id)
            {
                return(BadRequest());
            }

            db.Entry(sideEffect).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!SideEffectExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Exemple #8
0
        public IActionResult Create(SideEffectViewModel model)
        {
            if (ModelState.IsValid)
            {
                var sideEffect = new SideEffect {
                    SideEffectName = model.Name
                };
                var x = _databaseContext.SideEffect.FirstOrDefault(g => g.SideEffectName == sideEffect.SideEffectName);

                if (x != null)
                {
                    TempData[Constants.Message]       = $"Nuspojava tog imena već postoji.\n";
                    TempData[Constants.ErrorOccurred] = true;
                    return(View("Add", model));
                }
                _databaseContext.SideEffect.Add(sideEffect);

                TempData["Success"] = true;
                _databaseContext.SaveChanges();
                TempData[Constants.Message]       = $"Nuspojava je dodana";
                TempData[Constants.ErrorOccurred] = false;

                return(RedirectToAction(nameof(Index)));
            }
            else
            {
                return(View("Add", model));
            }
        }
Exemple #9
0
        public void Apply(SideEffect <Account> sideEffect)
        {
            var entity = Get(sideEffect.EntityId);

            sideEffect.Apply(entity);
            Save(entity);
        }
Exemple #10
0
    private void checkEffect(AttackObj attacker)
    {
        Fx fx;

        if (attacker.particles == null)
        {
            return;
        }
        if (attacker.particles.gameObject.name == "hypnotized")
        {
            fx = Fx.Distracted;
        }
        else if (attacker.particles.gameObject.name == "confused")
        {
            fx = Fx.Confused;
        }
        else if (attacker.particles.gameObject.name == "love")
        {
            fx = Fx.Love;
        }
        else if (attacker.particles.gameObject.name == "bats")
        {
            fx = Fx.Scared;
        }
        else
        {
            return;
        }
        if (sideEffect != null && sideEffect.effect == fx)
        {
            return;
        }
        healthBar.setSideEffect(fx, this);
        sideEffect = new SideEffect(fx, attacker.owner.cat.getCatAsset().secondaryType);
    }
        public int EffectsShow(IEnumerator enumerator, string methodName)
        {
            int                id  = GenerateEffectId();
            SideEffect         se  = new SideEffect(enumerator, methodName, id);
            Stack <SideEffect> ses = new Stack <SideEffect>();

            ses.Push(se);
            EffectsQueue.Enqueue(ses);
            return(id);
        }
Exemple #12
0
 public Subscription(IChangeNotification changeNotification, Action sideEffect, bool initiallyActive)
 {
     this.changeNotification = changeNotification;
     this.SideEffect         = sideEffect;
     this.changeHandler      = (sender, evt) => SideEffect?.Invoke();
     if (initiallyActive)
     {
         Active = true;
     }
 }
Exemple #13
0
        public IHttpActionResult GetSideEffect(int id)
        {
            SideEffect sideEffect = db.SideEffects.Find(id);

            if (sideEffect == null)
            {
                return(NotFound());
            }

            return(Ok(sideEffect));
        }
 static void Main()
 {
     SideEffect.Wrap(() => new [] { 4, 6, 2, 7, 8, 1 }.FromIEnumerable())
     .Bind(nums => SideEffect.PrintString("Original:")
           .Bind(_ => SideEffect.PrintNumbers(nums))
           .Bind(_ => SideEffect.PrintString("Reversed:"))
           .Bind(_ => SideEffect.PrintNumbers(nums.Reverse()))
           .Bind(_ => SideEffect.PrintString("Sorted:"))
           .Bind(_ => SideEffect.PrintNumbers(nums.QuickSort())))
     .Execute();
 }
        public bool VisitSideEffect(SideEffect side)
        {
            var sidePat = pattern as SideEffect;

            if (sidePat == null)
            {
                return(false);
            }
            matcher.Pattern = sidePat.Expression;
            return(matcher.Match(side.Expression));
        }
Exemple #16
0
 public void RemoveSideEffect(SideEffect effect)
 {
     if (m_appliedEffects.Contains(effect))
     {
         m_appliedEffects.Remove(effect);
     }
     else if (m_passiveEffects.Contains(effect))
     {
         m_passiveEffects.Remove(effect);
     }
     effect.FinishEffect();
 }
Exemple #17
0
        public IHttpActionResult PostSideEffect(SideEffect sideEffect)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.SideEffects.Add(sideEffect);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = sideEffect.Id }, sideEffect));
        }
Exemple #18
0
    public SideEffectPrefab SpawnSideEffectPrefab(SideEffect effect, EntityTransform entityTransform)
    {
        GameObject       sideEffectObj        = SpawnManager.instance.InstantiatePool(effect.Prefab, entityTransform.transform.position, entityTransform.transform.rotation);
        int              projectileInstanceID = sideEffectObj.GetInstanceID();
        SideEffectPrefab prefab = sideEffectObj.GetComponent <SideEffectPrefab>();

        prefab.Initialize(effect.Prefab + "_" + projectileInstanceID);
        m_sideEffectPrefabList.Add(prefab.ServerInstanceId, prefab);
        int transformPosint = (int)entityTransform.EntityTransformType;

        RpcSpawnSideEffectPrefab(effect.EffectIdentifier, prefab.ServerInstanceId, transformPosint);
        return(prefab);
    }
Exemple #19
0
        public async Task <bool> UpdateAsync(SideEffect model)
        {
            if (this.db.SideEffects.Any(seff => seff.Name == model.Name && seff.Id != model.Id))
            {
                return(false);
            }

            this.db.SideEffects.Update(model);

            await this.db.SaveChangesAsync();

            return(true);
        }
Exemple #20
0
 public SideEffect(SideEffect effect)
 {
     m_effectIdentifier = effect.m_effectIdentifier;
     m_prefab           = effect.m_prefab;
     m_effectPos        = effect.m_effectPos;
     m_effectSound      = effect.m_effectSound;
     m_volume           = effect.m_volume;
     m_loopSound        = effect.m_loopSound;
     m_useType          = effect.m_useType;
     m_isPermanent      = effect.m_isPermanent;
     m_duration         = effect.m_duration;
     m_ticks            = effect.m_ticks;
 }
Exemple #21
0
        public async Task <bool> CreateAsync(SideEffect model)
        {
            if (this.db.SideEffects.Any(seff => seff.Name == model.Name))
            {
                return(false);
            }

            this.db.Add(model);

            await this.db.SaveChangesAsync();

            return(true);
        }
Exemple #22
0
    internal SideEffect GetSideEffect(Dictionary <NodeType, SideEffect> sedb)
    {
        SideEffect se;

        if (sedb.TryGetValue(this, out se))
        {
            return(se);
        }
        se = new SideEffect {
            id = this, write = false
        };
        sedb[this] = se;
        return(se);
    }
    public static SideEffect CreateAsset(string effectClass, string abilityClass)
    {
        SideEffect asset = ScriptableObject.CreateInstance(effectClass) as SideEffect;
        string     path  = "Assets/MobaStorm/Scripts/Abilities/AbilityAssets/EffectAssets/";

        string assetPathAndName = AssetDatabase.GenerateUniqueAssetPath(path + abilityClass + "-" + effectClass + ".asset");

        AssetDatabase.CreateAsset(asset, assetPathAndName);

        AssetDatabase.SaveAssets();
        AssetDatabase.Refresh();

        return(asset);
    }
        static void DivisionTest()
        {
            var x = 18.ToLazy();
            var y = 2.ToLazy();
            var z = 3.ToLazy();

            Optional.Value(x)
            .Bind(v => Divide(v, y))
            .Bind(v => Divide(v, z))
            .WithOptional(
                SideEffect.PrintString("Cannot divide by zero"),
                SideEffect.PrintNumber)
            .Execute();
        }
Exemple #25
0
        public IHttpActionResult DeleteSideEffect(int id)
        {
            SideEffect sideEffect = db.SideEffects.Find(id);

            if (sideEffect == null)
            {
                return(NotFound());
            }

            db.SideEffects.Remove(sideEffect);
            db.SaveChanges();

            return(Ok(sideEffect));
        }
        private AddNewItemViewModel SetupViewModel(SideEffect sideEffect = null)
        {
            if (sideEffect == null)
            {
                sideEffect = new SideEffect();
            }

            var addNewItemVM = new AddNewItemViewModel();

            addNewItemVM.ItemKlass  = sideEffect.KlassName;
            addNewItemVM.Controller = GetType().Name.ToString().Replace("Controller", "");
            addNewItemVM.Name       = sideEffect.Name;
            addNewItemVM.ItemId     = sideEffect.ID;
            addNewItemVM.Tab        = "side-effects";
            return(addNewItemVM);
        }
        public void EffectEnd()
        {
            if (BattleManager.Instance.ShowBEMMessages)
            {
                ClientLog.Instance.PrintWarning("end");
            }

            if (CurrentEffect != null)
            {
                if (CurrentEffect.Enumerator != null)
                {
                    try
                    {
                        Instance.StopCoroutine(CurrentEffect.Enumerator);
                        if (BattleManager.Instance.ShowBEMMessages)
                        {
                            ClientLog.Instance.PrintBattleEffectsEnd("- [" + Name + "] EndEffect: " + CurrentEffect.MethodName + " id: " + CurrentEffect.EffectId);
                        }
                    }
                    catch (Exception e)
                    {
                        if (BattleManager.Instance.ShowBEMMessages)
                        {
                            ClientLog.Instance.PrintWarning(e.ToString());
                        }
                    }
                }
                else
                {
                    if (BattleManager.Instance.ShowBEMMessages)
                    {
                        ClientLog.Instance.PrintWarning("CurrentEffect.Enumerator = null");
                    }
                }

                CurrentEffect = null;
            }
            else
            {
                if (BattleManager.Instance.ShowBEMMessages)
                {
                    ClientLog.Instance.PrintWarning("CurrentEffect = null");
                }
            }

            IsExcuting = false;
        }
Exemple #28
0
    public void RpcSpawnSideEffectPrefab(string effectIdentifier, string serverInstanceId, int transformPos)
    {
        SideEffect      effect          = AbilityManager.instance.GetSideEffect(effectIdentifier);
        EntityTransform entityTransform = m_mobaEntity.GetTransformPosition((EEntityTransform)transformPos);
        GameObject      sideEffectObj   = SpawnManager.instance.InstantiatePool(effect.Prefab, entityTransform.transform.position, entityTransform.transform.rotation);

        sideEffectObj.transform.SetParent(entityTransform.transform);
        SideEffectPrefab  prefab      = sideEffectObj.GetComponent <SideEffectPrefab>();
        CustomAudioSource audioSource = null;

        if (!string.IsNullOrEmpty(effect.EffectSound))
        {
            audioSource = AudioManager.instance.Play3dSound(effect.EffectSound, effect.Volume, entityTransform.gameObject, effect.LoopSound);
        }

        prefab.Initialize(serverInstanceId, audioSource);
        m_sideEffectPrefabList.Add(prefab.ServerInstanceId, prefab);
    }
        static void Main()
        {
            //var _42 = new Lazy<int>(() => 42);
            //SideEffect.ReadNumber()
            //    .Bind(x => SideEffect.PrintNumber(_42).Bind((v) => SideEffect.ReadNumber())
            //        .Bind(y =>
            //        {
            //            var sum = new Lazy<int>(() => y.Value + x.Value);
            //            return SideEffect.PrintNumber(sum);
            //        }))
            //    .Execute();



            var array = new int[] { 4, 6, 2, 7, 8, 1 };

            //var e = array.GetEnumerator();
            //e.MoveNext();
            //e.MoveNext();
            //e.MoveNext();
            //e.MoveNext();
            //Console.WriteLine(e.MoveNext());
            //Console.WriteLine(e.MoveNext());
            //Console.WriteLine(e.Current);
            //Console.WriteLine(e.MoveNext());

            //return;

            Range.FromTo(0.ToLazy(), 9.ToLazy())
            .Reverse()
            .QuickSort()
            .AtIndex(2.ToLazy())
            .Value
            .WithOptional(
                SideEffect.DoNothing(),
                SideEffect.PrintNumber
                ).Value.Execute();

            //.WithOptional(
            //    new Lazy<SideEffect<LazyVoid>>(SideEffect.DoNothing),
            //    num => new Lazy<SideEffect<LazyVoid>>(() => SideEffect.PrintNumber(num))
            //    ).Value
            //    .Execute();
        }
Exemple #30
0
    public static void SetFullname(SideEffect e)
    {
        if (e.Level == 1)
        {
            e.Fullname = e.Name;
        }

        if (e.Level == 2)
        {
            e.Fullname = e.ParentSideEffect.Name + ", " + e.Name;
        }

        if (e.Level == 3)
        {
            e.Fullname = e.ParentSideEffect.ParentSideEffect.Name + ", " + e.ParentSideEffect.Name + ", " + e.Name;
        }

        e.FullnameNoDiacritics = e.Fullname.RemoveDiacritics();
    }
Exemple #31
0
    public static void SetFullname(SideEffect e)
    {
        if (e.Level == 1)
        {
            e.Fullname = e.Name;
        }

        if (e.Level == 2)
        {
            e.Fullname = e.ParentSideEffect.Name + ", " + e.Name;
        }

        if (e.Level == 3)
        {
            e.Fullname = e.ParentSideEffect.ParentSideEffect.Name + ", " + e.ParentSideEffect.Name + ", " + e.Name;
        }

        e.FullnameNoDiacritics = e.Fullname.RemoveDiacritics();
    }
        public static string Insert(string name, int level, Guid? parentID)
        {
            RedBloodDataContext db = new RedBloodDataContext();

            SideEffect geo = new SideEffect();
            geo.Name = name.Trim();
            geo.Level = level;
            geo.ParentID = parentID;

            db.SideEffects.InsertOnSubmit(geo);

            try
            {
                db.SubmitChanges();
            }
            catch (Exception ex)
            {
                return ex.Message;
            }

            return geo.ID.ToString();
        }
		public virtual void VisitSideEffect(SideEffect side)
		{
			side.Expression.Accept(this);
		}
Exemple #34
0
 public void VisitSideEffect(SideEffect side)
 {
     var dt = side.Expression.Accept(asc);
     desc.MeetDataType(side.Expression, dt);
     side.Expression.Accept(desc, side.Expression.TypeVariable);
 }
 void InstructionVisitor.VisitSideEffect(SideEffect side)
 {
     stms.Add(new AbsynSideEffect(side.Expression));
 }
 public override Instruction TransformSideEffect(SideEffect side)
 {
     var instr = base.TransformSideEffect(side);
     return instr;
 }
 public void VisitSideEffect(SideEffect side)
 {
     d.VisitSideEffect(side);
 }
	private void detach_SideEffects(SideEffect entity)
	{
		this.SendPropertyChanging();
		entity.ParentSideEffect = null;
	}
Exemple #39
0
		public void VisitSideEffect(SideEffect side)
		{
			writer.Indent();
			side.Expression.Accept(this);
			writer.Terminate();
		}
 partial void InsertSideEffect(SideEffect instance);
 partial void UpdateSideEffect(SideEffect instance);
 partial void DeleteSideEffect(SideEffect instance);
Exemple #43
0
		public override void VisitSideEffect(SideEffect side)
		{
			isCritical = true;
		}