예제 #1
0
        public void Initialize()
        {
            Members.Clear();

            for (int i = 0; i < 7; i++) {
                TeamMember m = new TeamMember(this);
                m.State = PlayerState.Normal;
                m.Number = i;
                if (i < 3) {
                    m.Profession = Position.Bricky;
                } else if (i == 3) {
                    m.Profession = Position.Decimator;
                } else {
                    m.Profession = Position.Ballista;
                }
                Members.Add(m);
            }
        }
예제 #2
0
        public virtual void Enforce(Team T, TeamMember TM)
        {
            if (T == null || TM == null)
             {
                 return;
             }

             switch (assignedJudgement.Judged)
             {
                 case Judgement.JudgementType.Team:
                     assignedJudgement.Execute(T);
                     break;
                 case Judgement.JudgementType.TeamMember:
                     assignedJudgement.Execute(TM);
                     break;
                 case Judgement.JudgementType.Global:
                     assignedJudgement.Execute(manager);
                     break;

             }
        }
예제 #3
0
 public void Pass(TeamMember TM)
 {
     Pass(TM.position);
 }
예제 #4
0
 public void Hit(TeamMember victim)
 {
     victim.Stun(2000);
     if (victim.HasBall) victim.Drop();
 }
예제 #5
0
 public override void Execute(TeamMember TM)
 {
     throw new NotImplementedException();
 }
예제 #6
0
 public override void Execute(TeamMember TM)
 {
     TM.CantCatch = true;
     TM.Ignite();
     if(TM.HasBall) TM.Drop();
 }
예제 #7
0
 public abstract void Execute(TeamMember TM);
예제 #8
0
 public void SendFlying(Vector2 direction, float Velocity, float verticalF)
 {
     if(Possessor!=null) Possessor.HeldBall = null;
     Possessor = null;
     verticalForce = verticalF;
     velocity = Velocity;
     this.direction = direction;
     this.direction.Normalize();
     State = BallState.Flying;
 }
예제 #9
0
 public void Clear()
 {
     direction = Vector2.Zero;
     apexReached = true;
     height = 3f;
     if (Possessor != null) Possessor.HeldBall = null;
     TimeWithBall = 0f;
     State = BallState.Flying;
     Possessor = null;
     Passed = false;
     Kicked = false;
 }
예제 #10
0
 public TMemberItem(TeamMember Subject)
 {
     subject = Subject;
     id = subject.Name;
     color = subject.Team.Color;
 }
예제 #11
0
 public override void Execute(TeamMember TM)
 {
     TM.Team.Score += scoreDelta;
 }