public static Rectangle GetSpriteRectangle(UnitType unittype, GameData.Owner owner = GameData.Owner.Red) { int x = ((int)unittype - 1) * 48; int y = ((int)owner - 1) * 48; return(new Rectangle(x, y, 48, 48)); }
public static Rectangle GetSpriteRectangle(UnitType ut, GameData.Owner o, TerrainType t) { StringBuilder spritename = new StringBuilder(); if (o == GameData.Owner.None) { spritename.Append("Red"); } else { spritename.Append(o.ToString()); } spritename.Append("_"); spritename.Append(ut.ToString()); if (ut == UnitType.Soldier || ut == UnitType.Mech) { if (t == TerrainType.River) { spritename.Append("_River"); } if (t == TerrainType.Mountain) { spritename.Append("_Mountain"); } } return(BackgroundUnitSprite[spritename.ToString().ToEnum <SpriteSheetBackgroundUnit>()]); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { UnitType unittype = UnitType.None; GameData.Owner owner = GameData.Owner.None; int hp = 0; Guid guid = Guid.Empty; bool gotUnittype = false; bool gotGuid = false; bool gotOwner = false; bool gotHp = false; while (reader.Read()) { if (reader.TokenType != JsonToken.PropertyName) { break; } string propertyName = (string)reader.Value; if (!reader.Read()) { continue; } switch (propertyName) { case "UnitType": unittype = (serializer.Deserialize <string>(reader)).ToEnum <UnitType>(); gotUnittype = true; break; case "Owner": owner = (serializer.Deserialize <string>(reader)).ToEnum <GameData.Owner>(); gotOwner = true; break; case "HP": hp = serializer.Deserialize <int>(reader); gotHp = true; break; case "guid": guid = serializer.Deserialize <Guid>(reader); gotGuid = true; //CONTENT_MANAGER.ShowMessageBox(guid.ToString()); break; default: break; } } if (!(gotUnittype && gotHp && gotOwner && gotGuid)) { //throw new InvalidDataException("Not enought data"); return(null); } return(UnitCreationHelper.Create(unittype, owner, hp, AnimationName.idle, guid)); }
public static void LoadSprite() { SelectedMapCellCapturePointSprite = new Dictionary <GameData.Owner, Rectangle>(); GameData.Owner c = GameData.Owner.Red; for (int x = 0; x < 4; x++) { SelectedMapCellCapturePointSprite.Add(c, new Rectangle(x * 49, 0, 49, 20)); c = c.Next(); } }
public static void LoadSprite() { SelectedMapCellLoadedUnitSprite = new Dictionary <GameData.Owner, Rectangle>(); GameData.Owner c = GameData.Owner.Red; for (int x = 0; x < 4; x++) { SelectedMapCellLoadedUnitSprite.Add(c, new Rectangle(x * 39, 0, 39, 21)); c = c.Next(); } }
public static void LoadSprite() { SelectedMapCellBorderSprite = new Dictionary <GameData.Owner, Rectangle>(); GameData.Owner c = GameData.Owner.None; for (int x = 0; x < 5; x++) { SelectedMapCellBorderSprite.Add(c, new Rectangle(x * 144, 0, 144, 116)); c = c.Next(); } }
public static void LoadSprite() { SelectedMapCellUnitInfoSprite = new Dictionary <GameData.Owner, Rectangle>(); GameData.Owner c = GameData.Owner.Red; for (int x = 0; x < 4; x++) { SelectedMapCellUnitInfoSprite.Add(c, new Rectangle(x * 132, 0, 132, 25)); c = c.Next(); } }
public static Rectangle GetSprite(int cmdcount, GameData.Owner color) { SpriteSheetCommandSlot result = SpriteSheetCommandSlot.oneslotblue; if (color == GameData.Owner.Red) { switch (cmdcount) { case 1: result = SpriteSheetCommandSlot.oneslotblue; break; case 2: result = SpriteSheetCommandSlot.twoslotblue; break; case 3: result = SpriteSheetCommandSlot.threeslotblue; break; default: break; } } if (color == GameData.Owner.Blue) { switch (cmdcount) { case 1: result = SpriteSheetCommandSlot.oneslotred; break; case 2: result = SpriteSheetCommandSlot.twoslotred; break; case 3: result = SpriteSheetCommandSlot.threeslotred; break; default: break; } } return(CommandSlotSprite[result]); }
public static Rectangle GetSpriteRectangle(BuildingType bt, GameData.Owner owner = GameData.Owner.None) { StringBuilder result = new StringBuilder(); switch (owner) { case GameData.Owner.None: break; case GameData.Owner.Red: case GameData.Owner.Blue: case GameData.Owner.Green: case GameData.Owner.Yellow: result.Append(owner.ToString()); result.Append("_"); break; default: break; } result.Append(bt.ToString()); return(BuildingSprite[result.ToString().ToEnum <SpriteSheetBuilding>()]); }
public static Rectangle GetSpriteRectangle(TerrainType t, Weather w, Theme th, UnitType ut, GameData.Owner o = GameData.Owner.None) { StringBuilder spritename = new StringBuilder(); switch (w) { case Weather.Sunny: switch (th) { case Theme.Tropical: case Theme.Desert: spritename.Append(th.ToString()); spritename.Append("_"); break; default: break; } break; case Weather.Rain: case Weather.Snow: spritename.Append(w.ToString()); spritename.Append("_"); break; default: break; } if (t == TerrainType.HQ && o != Owner.None) { spritename.Append(o.ToString()); spritename.Append("_"); } if (ut == UnitType.TransportCopter || ut == UnitType.BattleCopter || ut == UnitType.Fighter || ut == UnitType.Bomber) { spritename.Append("Sky"); goto end; } if (ut == UnitType.Lander || ut == UnitType.Cruiser || ut == UnitType.Submarine || ut == UnitType.Battleship) { spritename.Append("Sea"); goto end; } if (t == TerrainType.MissileSiloLaunched) { spritename.Append(TerrainType.MissileSilo.ToString()); goto end; } spritename.Append(t.ToString()); end: return(BackgroundTerrainSprite[spritename.ToString().ToEnum <SpriteSheetBackgroundTerrain>()]); }
public static Rectangle GetSpriteRectangle(GameData.Owner t) { return(SelectedMapCellCapturePointSprite[t]); }
public static Rectangle GetSpriteRectangle(GameData.Owner t) { return(SelectedMapCellBorderSprite[t]); }
public static Rectangle GetSpriteRectangle(GameData.Owner t) { return(SelectedMapCellLoadedUnitSprite[t]); }