Ejemplo n.º 1
0
        public static Dictionary <int, CAnimationObject> BuildObjectInMap(CMap _map)
        {
            Dictionary <int, CAnimationObject> listObject = new Dictionary <int, CAnimationObject>();

            foreach (KeyValuePair <int, CGameObject> pair in _map.ListObjects)
            {
                CAnimationObject _object = null;
                Vector2          _pos    = new Vector2(pair.Value.X, pair.Value.Y);
                IDObject         _type   = (IDObject)pair.Value.Type;
                _object = Build.MakeObject(_type, _pos);

                if (_object != null)
                {
                    listObject.Add(pair.Key, _object);
                }
            }

            // gán coin vào break_question
            foreach (KeyValuePair <int, CAnimationObject> pair in listObject)
            {
                if (pair.Value.IDObject == IDObject.MISC_QUESTION_BRICK)
                {
                    foreach (KeyValuePair <int, CAnimationObject> p in listObject)
                    {
                        if (pair.Value.Position == p.Value.Position && (p.Value.IDObject == IDObject.ITEM_COIN_ACTIVATED ||
                                                                        p.Value.IDObject == IDObject.ITEM_FIRE_FLOWER || p.Value.IDObject == IDObject.ITEM_SUPER_MUSHROOM ||
                                                                        p.Value.IDObject == IDObject.ITEM_1UP_MUSHROOM || p.Value.IDObject == IDObject.ITEM_STARMAN || p.Value.IDObject == IDObject.ITEM_GROW_UP))
                        {
                            pair.Value.SetItem(p.Value);
                        }
                    }
                }
            }
            return(listObject);
        }
Ejemplo n.º 2
0
 public QuestionBrick(Vector2 _Position, IDObject _IDItem)
     : base(_Position)
 {
     m_IDObject = IDObject.MISC_QUESTION_BRICK;
     m_Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.MISC_QUESTION_BRICK));
     m_Status = IDStatus.ALIVE;
     Sprite.Depth = GlobalValue.MISC_SPRITE_DEPTH;
     switch (_IDItem)
     {
         //case IDObject.ITEM_COIN_ACTIVATED:
         //    m_Item = new ItemCoin(_Position, _IDItem);
         //    break;
         //case IDObject.ITEM_GROW_UP:
         //    m_Item = new ItemGrowUp(_Position);
         //    //m_Item = new CAnimationObject(_Position);
         //    break;
         //case IDObject.ITEM_1UP_MUSHROOM:
         //    m_Item = new Item1UpMushroom(_Position);
         //    //m_Item = new GreenMushroom(_Position);
         //    break;
         //case IDObject.ITEM_STARMAN:
         //    m_Item = new ItemStarman(_Position);
         //    break;
         default:
             break;
     }
 }
Ejemplo n.º 3
0
 public QuestionBrick(Vector2 _Position, IDObject _IDItem)
     : base(_Position)
 {
     m_IDObject   = IDObject.MISC_QUESTION_BRICK;
     m_Sprite     = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.MISC_QUESTION_BRICK));
     m_Status     = IDStatus.ALIVE;
     Sprite.Depth = GlobalValue.MISC_SPRITE_DEPTH;
     switch (_IDItem)
     {
     //case IDObject.ITEM_COIN_ACTIVATED:
     //    m_Item = new ItemCoin(_Position, _IDItem);
     //    break;
     //case IDObject.ITEM_GROW_UP:
     //    m_Item = new ItemGrowUp(_Position);
     //    //m_Item = new CAnimationObject(_Position);
     //    break;
     //case IDObject.ITEM_1UP_MUSHROOM:
     //    m_Item = new Item1UpMushroom(_Position);
     //    //m_Item = new GreenMushroom(_Position);
     //    break;
     //case IDObject.ITEM_STARMAN:
     //    m_Item = new ItemStarman(_Position);
     //    break;
     default:
         break;
     }
 }
Ejemplo n.º 4
0
        public void StoreObject(IDObject dObject)
        {
            if (!dObjects.Values.Contains(dObject))
            {
                dObjects.Add(dObject.OId, dObject);
                return;
            }

            logger.Error("Duplicate DObject found.", dObject.OId);
        }
Ejemplo n.º 5
0
 public CastleFlag(Vector2 _Position, IDObject _IDObject)
     : base(_Position)
 {
     oldPosition = _Position;
     IDObject    = IDObject.MISC_STAR_FLAG_CASTLE;
     if (_IDObject == IDObject.MISC_STAR_FLAG_CASTLE)
     {
         Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.MISC_STAR_FLAG_CASTLE));
     }
     Sprite.Depth = 0.05f;
 }
Ejemplo n.º 6
0
    /// <summary>
    /// 查找zone
    /// </summary>
    public Zone FindZone(int zoneid)
    {
        IDObject found = m_zonelist.Find(
            delegate(IDObject zone)
        {
            return(zone.id == zoneid);
        }
            );

        return((Zone)found);
    }
Ejemplo n.º 7
0
 public CastleFlag(Vector2 _Position, IDObject _IDObject)
     : base(_Position)
 {
     oldPosition = _Position;
     IDObject = IDObject.MISC_STAR_FLAG_CASTLE;
     if (_IDObject == IDObject.MISC_STAR_FLAG_CASTLE)
     {
         Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.MISC_STAR_FLAG_CASTLE));
     }
     Sprite.Depth = 0.05f;
 }
Ejemplo n.º 8
0
 public CObject(IDObject _IDObject, Vector2 _Position)
 {
     m_IDObject      = _IDObject;
     m_Position      = _Position;
     m_StartPosition = m_Position;
     m_Sprite        = null;
     //m_Status = IDStatus.ALIVE;
     m_IsAlive     = true;
     m_IsVisible   = false;
     m_IsColliable = true;
 }
Ejemplo n.º 9
0
        public int RegisterObject(IDObject dObject)
        {
            if (!dObjects.Values.Contains(dObject))
            {
                dObject.OId = nextId;
                dObjects.Add(nextId++, dObject);
                return dObject.OId;
            }

            logger.Error("Duplicate DObject found.", dObject.OId);
            return -1;  // hacky
        }
        public FrontEndServer(IServerCommunicator communicator, ILogger logger, int sleepTimer, IServerDOManager dOManager)
        {
            this.communicator = communicator;
            this.logger = logger;
            this.sleepTimer = sleepTimer;
            this.dOManager = dOManager;

            // Create root DObject
            // TODO - DObject should have OnGetEvent property.
            DObject newObject = new DObject(dOManager);
            newObject.OnGetEvent += RootDObjectHandler;
            rootDObject = newObject;
            dOManager.RegisterObject(newObject);
        }
Ejemplo n.º 11
0
 public ItemCoin(Vector2 _Position, IDObject _IDObject)
     : base(_Position)
 {
     IDObject = _IDObject;
     switch (_IDObject)
     {
         case IDObject.ITEM_COIN_ACTIVATED:
             m_Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.ITEM_COIN_ACTIVATED));
             Sprite.Depth = 0.1f;
             break;
         case IDObject.ITEM_COIN_NORMAL:
             Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.ITEM_COIN_NORMAL));
             break;
         default:
             break;
     }
     oldPosition = _Position;
 }
Ejemplo n.º 12
0
    /// <summary>
    /// 查找Transporter
    /// </summary>
    public LevelTransporter FindTransporter(int zoneid, LevelTransporter.TransporterType type = LevelTransporter.TransporterType.Main)
    {
        if (this.mTransporterList.ContainsKey(zoneid))
        {
            List <IDObject> spawns;
            mTransporterList.TryGetValue(zoneid, out spawns);

            IDObject spawn = spawns.Find(
                delegate(IDObject s)
            {
                return(((LevelTransporter)s).next_zone_id != 0 && ((LevelTransporter)s).type == type);
            }
                );

            return((LevelTransporter)spawn);
        }

        return(null);
    }
Ejemplo n.º 13
0
    /// <summary>
    /// 查找EnemySpawn
    /// </summary>
    public EnemySpawn FindEnemySpawn(int zoneid, int enemyspawnid)
    {
        if (mEnemySpawnList.ContainsKey(zoneid))
        {
            List <IDObject> spawns;
            mEnemySpawnList.TryGetValue(zoneid, out spawns);

            IDObject spawn = spawns.Find(
                delegate(IDObject s)
            {
                return(s.id == enemyspawnid);
            }
                );

            return((EnemySpawn)spawn);
        }

        return(null);
    }
Ejemplo n.º 14
0
    /// <summary>
    /// 查找Transporter
    /// </summary>
    public LevelTransporter FindTransporter(int zoneid, int tid)
    {
        if (this.mTransporterList.ContainsKey(zoneid))
        {
            List <IDObject> spawns;
            mTransporterList.TryGetValue(zoneid, out spawns);

            IDObject spawn = spawns.Find(
                delegate(IDObject s)
            {
                return(s.id == tid);
            }
                );

            return((LevelTransporter)spawn);
        }

        return(null);
    }
Ejemplo n.º 15
0
    /// <summary>
    /// 查找PlayerSpawn
    /// </summary>
    public PlayerSpawn FindPlayerSpawn(int zoneid, int playerSpawnid)
    {
        if (mPlayerSpawnList.ContainsKey(zoneid))
        {
            List <IDObject> spawns;
            mPlayerSpawnList.TryGetValue(zoneid, out spawns);

            IDObject spawn = spawns.Find(
                delegate(IDObject s)
            {
                return(s.id == playerSpawnid);
            }
                );

            return((PlayerSpawn)spawn);
        }

        return(null);
    }
Ejemplo n.º 16
0
        public ItemCoin(Vector2 _Position, IDObject _IDObject)
            : base(_Position)
        {
            IDObject = _IDObject;
            switch (_IDObject)
            {
            case IDObject.ITEM_COIN_ACTIVATED:
                m_Sprite     = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.ITEM_COIN_ACTIVATED));
                Sprite.Depth = 0.1f;
                break;

            case IDObject.ITEM_COIN_NORMAL:
                Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.ITEM_COIN_NORMAL));
                break;

            default:
                break;
            }
            oldPosition = _Position;
        }
Ejemplo n.º 17
0
 public IDObjectViewModel(IDObject NamedObject)
 {
   _id = NamedObject;
 }
Ejemplo n.º 18
0
 public void AddCharacter(NetworkConnection conn, IDObject playerObject)
 {
     registredAccount.Find (delegate(TAccount obj) {
         return obj.usedConnection == conn;
     }).addCharacter (playerObject);
 }
Ejemplo n.º 19
0
        private void ConnectionRequestAccepted()
        {
            logger.Debug("ConnectionRequestAccepted on Client");

            // TODO - DObject should have OnGetEvent property.
            DObject newObject = new DObject(dOManager);
            newObject.OId = 0;
            newObject.OnGetEvent += RootDObjectHandler;
            rootDObject = newObject;
            dOManager.StoreObject(newObject);

            communicator.SendEvent(new LogOnEvent());
        }
Ejemplo n.º 20
0
 //Geht nach unten
 public void unregister(IDObject o)
 {
     _containedID.Remove (o.id);
     loadedObjects.Remove(o);
     foreach (WorldBlock b in subBlocksRef) {
         b.unregister (o);
     }
 }
Ejemplo n.º 21
0
 //Geht nach oben
 public void register(IDObject o)
 {
     _containedID.Add (o.id);
     loadedObjects.Add (o);
     overBlock.register (o);
 }
Ejemplo n.º 22
0
 public static void registerIDObject(IDObject o, Vector3 node)
 {
     instance.usedWorld.Nodes [(int)node.x-instance.usedWorld.offset.x, (int)node.y-instance.usedWorld.offset.y, (int)node.z-instance.usedWorld.offset.z].observers.Add (o);
     if (!instance.usedWorld.Nodes [(int)node.x-instance.usedWorld.offset.x, (int)node.y-instance.usedWorld.offset.y, (int)node.z-instance.usedWorld.offset.z].isLoaded)
         instance.usedWorld.Nodes [(int)node.x-instance.usedWorld.offset.x, (int)node.y-instance.usedWorld.offset.y, (int)node.z-instance.usedWorld.offset.z].load ();
 }
Ejemplo n.º 23
0
 public IDObjectViewModel(IDObject NamedObject)
 {
     _id = NamedObject;
 }
Ejemplo n.º 24
0
 public void addCharacter(IDObject character)
 {
     _playerObjectsID.Add (character.id);
     playerObjectsName.Add (character.GetComponent<TCreature> ().name);
 }
Ejemplo n.º 25
0
 public static void unregisterIDObject(IDObject o,Vector3 node)
 {
     instance.usedWorld.Nodes [(int)node.x-instance.usedWorld.offset.x, (int)node.y-instance.usedWorld.offset.y, (int)node.z-instance.usedWorld.offset.z].observers.Remove (o);
     if(instance.usedWorld.Nodes [(int)node.x-instance.usedWorld.offset.x, (int)node.y-instance.usedWorld.offset.y, (int)node.z-instance.usedWorld.offset.z].observers.Count==0)
         instance.usedWorld.Nodes [(int)node.x-instance.usedWorld.offset.x, (int)node.y-instance.usedWorld.offset.y, (int)node.z-instance.usedWorld.offset.z].unload();
 }
Ejemplo n.º 26
0
        public static CAnimationObject MakeObject(IDObject _type, Vector2 _pos)
        {
            CAnimationObject _object = null;

            switch (_type)
            {
            //case IDObject.SMALL_MARIO:
            //    _object = new Mario(_pos);
            //    break;
            case IDObject.ENEMY_GOOMBA_OW:
                _object = new Goomba(_pos, IDDir.LEFT);
                break;

            case IDObject.ENEMY_KOOPA_OW:
                _object = new Koopa(_pos);
                break;

            case IDObject.MISC_BASE_BRICK:
                _object = new BaseBrick(_pos);
                break;

            case IDObject.MISC_BIG_GRASS:
                _object = new BigGrass(_pos);
                break;

            case IDObject.MISC_BIG_MOUNTAIN:
                _object = new BigMountain(_pos);
                break;

            case IDObject.MISC_CASTLE:
                _object = new Castle(_pos);
                break;

            case IDObject.ENEMY_BOSS:
                _object = new Boss(_pos);
                break;

            //case IDObject.MISC_GATE_PIPE:
            //_object = new GatePipe(_pos, IDStatus.GATE_PIPE_DOWN);
            //break;
            case IDObject.MISC_HARD_BRICK:
                _object = new HardBrick(_pos);
                break;

            case IDObject.MISC_IRON_BRICK:
                _object = new HardBrick(_pos);
                break;

            case IDObject.MISC_STOCK_PIPE:
                _object = new StockPipe(_pos);
                break;

            case IDObject.MISC_MEDIUM_GRASS:
                _object = new MediumGrass(_pos);
                break;

            case IDObject.MISC_MEDIUM_MOUNTAIN:
                _object = new MediumMountain(_pos);
                break;

            case IDObject.MISC_PIECE:
                _object = new Piece(_pos);
                break;

            case IDObject.MISC_QUESTION_BRICK:
                _object = new QuestionBrick(_pos, IDObject.ITEM_COIN_ACTIVATED);
                break;

            case IDObject.MISC_SMALL_GRASS:
                _object = new SmallGrass(_pos);
                break;

            case IDObject.MISC_SOFT_BRICK:
                _object = new SoftBrick(_pos);
                break;

            case IDObject.MISC_GOAL_POLE:
                _object = new GoalPole(_pos);
                break;

            case IDObject.MISC_GATE_PIPE:
                _object = new GatePipe(_pos);
                break;

            case IDObject.MISC_FLAG:
                _object = new Flag(_pos);
                break;

            //case IDObject.BRICK_COIN:
            //    _object = new QuestionBrick(_pos, IDObject.ITEM_COIN_ACTIVATED);
            //    break;
            case IDObject.ITEM_STARMAN:
                _object = new ItemStarman(_pos);
                break;

            //case IDObject.MISC_UP_PIPE:
            //    _object = new UpPipe(_pos);
            //    break;
            case IDObject.ITEM_1UP_MUSHROOM:
                _object = new Item1UpMushroom(_pos);
                break;

            case IDObject.MISC_SMALL_CLOUND:
                _object = new SmallClound(_pos);
                break;

            case IDObject.MISC_MEDIUM_CLOUND:
                _object = new MediumClound(_pos);
                break;

            case IDObject.MISC_BIG_CLOUND:
                _object = new BigClound(_pos);
                break;

            case IDObject.ITEM_COIN_ACTIVATED:
                _object = new ItemCoin(_pos, IDObject.ITEM_COIN_ACTIVATED);
                break;

            case IDObject.ITEM_COIN_NORMAL:
                _object = new ItemCoin(_pos, IDObject.ITEM_COIN_NORMAL);
                break;

            case IDObject.ITEM_FIRE_FLOWER:
                _object = new ItemFireFlower(_pos);
                break;

            case IDObject.ITEM_SUPER_MUSHROOM:
                _object = new ItemSuperMushroom(_pos);
                break;

            case IDObject.ITEM_GROW_UP:
                _object = new ItemGrowUp(_pos);
                break;

            //case IDObject.BRICK_COIN:
            //    _object = new QuestionBrick(_pos, IDObject.ITEM_COIN_ACTIVATED);
            //    break;
            //case IDObject.BRICK_FLOWER:
            //    _object = new QuestionBrick(_pos, IDObject.ITEM_FIRE_FLOWER);
            //    break;
            //case IDObject.BRICK_SUPPERMUSHROOM:
            //    _object = new QuestionBrick(_pos, IDObject.ITEM_SUPER_MUSHROOM);
            //    break;
            //case IDObject.BRICK_1UPMUSHROOM:
            //    _object = new QuestionBrick(_pos, IDObject.BRICK_1UPMUSHROOM);
            //    break;
            //case IDObject.BRICK_STAR:
            //    _object = new QuestionBrick(_pos, IDObject.ITEM_STARMAN);
            //    break;
            default:
                break;
            }

            return(_object);
        }
Ejemplo n.º 27
0
 public virtual void initialize()
 {
     _referenceID = gameObject.GetComponent<IDObject> ().id;
     referenceObject = gameObject.GetComponent<IDObject> ();
 }
Ejemplo n.º 28
0
 public CObject(IDObject _IDObject, Vector2 _Position)
 {
     m_IDObject = _IDObject;
     m_Position = _Position;
     m_StartPosition = m_Position;
     m_Sprite = null;
     //m_Status = IDStatus.ALIVE;
     m_IsAlive = true;
     m_IsVisible = false;
     m_IsColliable = true;
 }
Ejemplo n.º 29
0
        public static CAnimationObject MakeObject(IDObject _type, Vector2 _pos)
        {
            CAnimationObject _object = null;
            switch (_type)
            {
                //case IDObject.SMALL_MARIO:
                //    _object = new Mario(_pos);
                //    break;
                case IDObject.ENEMY_GOOMBA_OW:
                    _object = new Goomba(_pos, IDDir.LEFT);
                    break;
                case IDObject.ENEMY_KOOPA_OW:
                    _object = new Koopa(_pos);
                    break;
                case IDObject.MISC_BASE_BRICK:
                    _object = new BaseBrick(_pos);
                    break;
                case IDObject.MISC_BIG_GRASS:
                    _object = new BigGrass(_pos);
                    break;
                case IDObject.MISC_BIG_MOUNTAIN:
                    _object = new BigMountain(_pos);
                    break;
                case IDObject.MISC_CASTLE:
                    _object = new Castle(_pos);
                    break;
                case IDObject.ENEMY_BOSS:
                    _object = new Boss(_pos);
                    break;
                //case IDObject.MISC_GATE_PIPE:
                    //_object = new GatePipe(_pos, IDStatus.GATE_PIPE_DOWN);
                    //break;
                case IDObject.MISC_HARD_BRICK:
                    _object = new HardBrick(_pos);
                    break;
                case IDObject.MISC_IRON_BRICK:
                    _object = new HardBrick(_pos);
                    break;
                case IDObject.MISC_STOCK_PIPE:
                    _object = new StockPipe(_pos);
                    break;
                case IDObject.MISC_MEDIUM_GRASS:
                    _object = new MediumGrass(_pos);
                    break;
                case IDObject.MISC_MEDIUM_MOUNTAIN:
                    _object = new MediumMountain(_pos);
                    break;
                case IDObject.MISC_PIECE:
                    _object = new Piece(_pos);
                    break;
                case IDObject.MISC_QUESTION_BRICK:
                    _object = new QuestionBrick(_pos, IDObject.ITEM_COIN_ACTIVATED);
                    break;
                case IDObject.MISC_SMALL_GRASS:
                    _object = new SmallGrass(_pos);
                    break;
                case IDObject.MISC_SOFT_BRICK:
                    _object = new SoftBrick(_pos);
                    break;
                case IDObject.MISC_GOAL_POLE:
                    _object = new GoalPole(_pos);
                    break;
                case IDObject.MISC_GATE_PIPE:
                    _object = new GatePipe(_pos);
                    break;
                case IDObject.MISC_FLAG:
                    _object = new Flag(_pos);
                    break;
                //case IDObject.BRICK_COIN:
                //    _object = new QuestionBrick(_pos, IDObject.ITEM_COIN_ACTIVATED);
                //    break;
                case IDObject.ITEM_STARMAN:
                    _object = new ItemStarman(_pos);
                    break;
                //case IDObject.MISC_UP_PIPE:
                //    _object = new UpPipe(_pos);
                //    break;
                case IDObject.ITEM_1UP_MUSHROOM:
                    _object = new Item1UpMushroom(_pos);
                    break;
                case IDObject.MISC_SMALL_CLOUND:
                    _object = new SmallClound(_pos);
                    break;
                case IDObject.MISC_MEDIUM_CLOUND:
                    _object = new MediumClound(_pos);
                    break;
                case IDObject.MISC_BIG_CLOUND:
                    _object = new BigClound(_pos);
                    break;
                case IDObject.ITEM_COIN_ACTIVATED:
                    _object = new ItemCoin(_pos, IDObject.ITEM_COIN_ACTIVATED);
                    break;
                case IDObject.ITEM_COIN_NORMAL:
                    _object = new ItemCoin(_pos, IDObject.ITEM_COIN_NORMAL);
                    break;
                case IDObject.ITEM_FIRE_FLOWER:
                    _object = new ItemFireFlower(_pos);
                    break;
                case IDObject.ITEM_SUPER_MUSHROOM:
                    _object = new ItemSuperMushroom(_pos);
                    break;
                case IDObject.ITEM_GROW_UP:
                    _object = new ItemGrowUp(_pos);
                    break;
                //case IDObject.BRICK_COIN:
                //    _object = new QuestionBrick(_pos, IDObject.ITEM_COIN_ACTIVATED);
                //    break;
                //case IDObject.BRICK_FLOWER:
                //    _object = new QuestionBrick(_pos, IDObject.ITEM_FIRE_FLOWER);
                //    break;
                //case IDObject.BRICK_SUPPERMUSHROOM:
                //    _object = new QuestionBrick(_pos, IDObject.ITEM_SUPER_MUSHROOM);
                //    break;
                //case IDObject.BRICK_1UPMUSHROOM:
                //    _object = new QuestionBrick(_pos, IDObject.BRICK_1UPMUSHROOM);
                //    break;
                //case IDObject.BRICK_STAR:
                //    _object = new QuestionBrick(_pos, IDObject.ITEM_STARMAN);
                //    break;
                default:
                    break;
            }

            return _object;
        }