Ejemplo n.º 1
0
 public virtual bool Equals(clsSektorKoordinaten other)
 {
     if (this.Position == other.Position)
         return true;
     else
         return false;
 }
Ejemplo n.º 2
0
 public CampaignInfo()
 {
     campaignId = String.Empty;
     campaignName = String.Empty;
     ListPlayerInfo = new List<PlayerInfo>();
     FieldDimension = new clsSektorKoordinaten();
     SektorField = new SektorInfo[0, 0];
     ListUnits = new List<UnitInfo>();
     objCampaignData = new CampaignState();
 }
Ejemplo n.º 3
0
 public CampaignState()
 {
     CampaignId = string.Empty;
     CampaignName = string.Empty;
     ListPlayers = new List<PlayerInfo>();
     ListSektorInfo = new List<SektorInfo>();
     //result.DicSektors = new Dictionary<string, Sektor>();
     FieldDimension = new clsSektorKoordinaten();
     FieldType = string.Empty;
     ListUnitInfo = new List<UnitInfo>();
     ListUnitTypes = new List<UnitTypeInfo>();
     ListResourceInfo = new List<ResourceInfo>();
 }
Ejemplo n.º 4
0
        public string createNewCampaign(string playerid, string campaignname, clsSektorKoordinaten fielddim, int anzUnitsPerPlayer)
        {
            Player player = getPlayer(playerid);
            if (player == null)
                return "";

            // Datenbank
            ICampaignDatabase database = (ICampaignDatabase)getCampaignDbOrNew("");

            // Spielfeld
            Field field = new Field(fielddim);

            // Engine
            CampaignEngine engine = new CampaignEngine(field);
            engine.CampaignName = campaignname;
            engine.FieldField.Id = 123;
            engine.addPlayer(player);

            CampaignController controller = new CampaignController();
            controller.CampaignDataBase = database;
            controller.campaignEngine = engine;
            controller.CampaignKey = database.CampaignKey;
            controller.saveCurrentGameState();

            m_dictLoadedController[controller.CampaignKey] = controller;
            return database.CampaignKey;
        }
Ejemplo n.º 5
0
 public string createNewCampaign(string playerid, string campaignname, int x, int y, int anzUnits)
 {
     clsSektorKoordinaten fielddim = new clsSektorKoordinaten(x, y);
     string newCampaignId = GcmlDataManager.Instance.createNewCampaign(playerid, campaignname, fielddim, anzUnits);
     return newCampaignId;
 }
Ejemplo n.º 6
0
 public SektorInfo getSektor(string campaignid, clsSektorKoordinaten sektorkoord)
 {
     CampaignController controller = GcmlDataManager.Instance.getController(campaignid);
     Sektor sektor = controller.campaignEngine.FieldField.get(sektorkoord);
     return sektor.getInfo();
 }
Ejemplo n.º 7
0
        //, string strSpawnSektorKoord = "" --> zu dev zwecken
        internal clsUnit addUnit(string strPlayerID, int intUnitTypeID, string strSpawnSektorKoord = "")
        {
            Player objPlayer = getPlayerByID(strPlayerID);
            clsSektorKoordinaten objSpawSek = null;
            if (strSpawnSektorKoord != "")
            {
                string[] split = strSpawnSektorKoord.Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries);

                int x = Convert.ToInt32(split[0]);
                int y = Convert.ToInt32(split[1]);
                int z = Convert.ToInt32(split[2]);
                objSpawSek = new clsSektorKoordinaten(x, y, z);
            }
            else
            {
                objSpawSek = (objPlayer.unitspawnSektor != null ? objPlayer.unitspawnSektor.objSektorKoord : this.FieldField.nullSektorKoord);
            }

            //Ergibt eineindeutige UnitIDs

            clsUnit objUnit = null;
            Sektor s = FieldField.dicSektors[objSpawSek.uniqueIDstr()];
            if (s.ListUnits.Count<clsUnit>((n => n.strOwnerID == strPlayerID)) > 0)
            {
                objUnit = s.ListUnits.First<clsUnit>(u => u.strOwnerID == strPlayerID);
                objUnit.addNewSubUnit(objPlayer, intUnitTypeID);
            }
            else
            {
                objUnit = new clsUnit(objPlayer, intUnitTypeID);
                objUnit.strOwnerID = strPlayerID;
                objUnit.cnt = this.getID(this.getPlayerByID(strPlayerID));

                List<Player> lisP = null;

                if (objUnit.blnAlywaysVisible)
                {
                    lisP = this.lisPlayers;
                }
                else
                {
                    lisP = new List<Player> { this.getPlayerByID(strPlayerID) };
                }

                foreach (Player p in lisP)
                {
                    p.ListUnits.Add(objUnit);
                }

                this.FieldField.get(objSpawSek).addUnit(objUnit);
            }

            return objUnit;
        }