示例#1
0
        public void addLiking(double v, string reason, int turn, int stackStyle = STACK_NONE, bool slowDecay = false)
        {
            if (isSelf)
            {
                return;
            }                      //No events for self


            if (stackStyle == STACK_NONE)
            {
                RelEvent ev = new RelEvent();
                ev.amount    = v;
                ev.reason    = reason;
                ev.turn      = turn;
                ev.slowDecay = slowDecay;
                events.AddLast(ev);
            }
            else
            {
                RelEvent prev = null;
                foreach (RelEvent r2 in events)
                {
                    if (r2.reason == reason)
                    {
                        prev = r2;
                        break;
                    }
                }

                if (prev == null)
                {
                    //Didn't matter, wasn't there anyway. Make new
                    RelEvent ev = new RelEvent();
                    ev.amount    = v;
                    ev.reason    = reason;
                    ev.turn      = turn;
                    ev.slowDecay = slowDecay;
                    events.AddLast(ev);
                }
                else
                {
                    prev.slowDecay = slowDecay;
                    if (stackStyle == STACK_REPLACE)
                    {
                        prev.turn   = turn;
                        prev.amount = v;
                    }
                    else if (stackStyle == STACK_ADD)
                    {
                        prev.turn    = turn;
                        prev.amount += v;
                    }
                }
            }

            //liking += v;
        }
        public void addLiking(double v, string reason, int turn)
        {
            if (isSelf)
            {
                return;
            }                      //No events for self

            RelEvent ev = new RelEvent();

            ev.amount = v;
            ev.reason = reason;
            ev.turn   = turn;
            events.AddLast(ev);
            //liking += v;
        }