예제 #1
0
 private void Iter()
 {
     foreach (var obj1 in MobileObjects)
     {
         foreach (var obj2 in Objects)
         {
             if (obj1.Key == obj2.Key)
             {
                 continue;
             }
             if (obj2.Value.Disable)
             {
                 continue;
             }
             if (obj1.Value.GetPosition().Equal(obj2.Value.GetPosition()))
             {
                 if (obj2.Value is IResourceSet)
                 {
                     IResourceSet temp = (IResourceSet)obj2.Value;
                     Players[obj1.Value.GetOwnerID()].AddResources(temp.GetResources());
                     obj2.Value.Disable = true;
                     //ObjectsByPosition.Remove(obj2.Key);
                 }
                 //obj1.Value.Interract(obj2.Value);
             }
         }
     }
 }
예제 #2
0
파일: Player.cs 프로젝트: unfeelia/Engine
 public void CollectResource(IResourceSet resource)
 {
     foreach (var res in resource.GetResources())
     {
         resources[res.Key] += res.Value;
     }
 }
예제 #3
0
 public override void Interract(IModelObject modelObject)
 {
     if (modelObject is ICollectable)
     {
         if (modelObject is IResourceSet)
         {
             IResourceSet myTest = modelObject as IResourceSet;
             myTest.GetResources();
         }
     }
 }