private void InitManagers() { this._loader = LoaderManager.Instance; this._loader.LoadFiles(); this._mapLoader = new MapLoader(); var initInfo = new MapInitInfo(); initInfo.Biome = EBiome.Grassland; var lParty = new PartyBuildParams(); var rParty = new PartyBuildParams(); lParty.AIControlled = true; lParty.Culture = ECulture.Orcish; lParty.Difficulty = 2000; lParty.Name = "Ween Herders"; rParty.AIControlled = true; rParty.Culture = ECulture.Goblin; rParty.Difficulty = 2000; rParty.Name = "Battle Party"; initInfo.LParties.Add(lParty); initInfo.RParties.Add(rParty); initInfo.Cols = 20; initInfo.Rows = 20; var map = this._mapLoader.GetCombatMap(initInfo); CombatManager.Instance.Init(map); }
private void InitTileType(CTile tile, MapInitInfo info) { if (tile.Model.Type == ETile.None) { var mapParams = BiomeTable.Instance.Table[info.Biome]; double roll = RNG.Instance.NextDouble(); double tally = 1.0; foreach (var kvp in mapParams.TileDict) { tally -= kvp.Value; if (roll >= tally) { tile.Model.SetType(kvp.Key); tile.Model.SetAPCost(TileTable.Instance.Table[kvp.Key].Cost); tile.Model.SetStaminaCost(TileTable.Instance.Table[kvp.Key].StaminaCost); tile.Model.SetThreatMod(TileTable.Instance.Table[kvp.Key].ThreatMod); tile.Model.SetVulnMod(TileTable.Instance.Table[kvp.Key].VulnMod); if (TileTable.Instance.Table[kvp.Key].Liquid) { tile.Model.SetLiquid(true); } break; } } } }
public void Init(CMap map, MapInitInfo info) { var builder = new PartyBuilder(); foreach (var partyInfo in info.LParties) { var party = builder.Build(partyInfo); party.SetAIControlled(partyInfo.AIControlled); map.GetLParties().Add(party); } foreach (var partyInfo in info.RParties) { var party = builder.Build(partyInfo); party.SetAIControlled(partyInfo.AIControlled); map.GetRParties().Add(party); } foreach (var party in map.GetLParties()) { foreach (var character in party.GetChars()) { character.Proxy.SetLParty(true); } } }
private void InitTiles(MapInitInfo info) { var loader = new TileLoader(); loader.InitLandmarks(this._map, info); loader.InitTiles(this._map, info, BackgroundTiles); loader.RenderHeights(this._map); loader.InitMapEnvironment(this._map, info); }
private void InitChars(MapInitInfo info) { try { CharLoader.Instance.Init(this.MapHolder, this._map, info); } catch (Exception e) { Debug.Log(e.Message); } }
public CMap GetCombatMap(MapInitInfo info) { var builder = new MapBuilder(); var hexMap = builder.GetMap(info.Rows, info.Cols, ViewParams.OFFSET, ViewParams.MAP_CENTER); var map = new MMap(hexMap); this._map.SetMap(map); this.InitTiles(info); this.InitArmies(info); this.InitChars(info); return(this._map); }
public void InitTiles(CMap controller, MapInitInfo info, Transform tileHolder) { this.InitTileSprites(); foreach (var tile in controller.GetMap().GetTiles()) { this.InitTileType(tile, info); if (tile.Model.Liquid) { this.InitLiquidTile(tile, tileHolder); } else { this.InitNonLiquidTile(tile, tileHolder); } } controller.GetMap().InitControllerAdjacent(); }
public void InitLandmarks(CMap controller, MapInitInfo info) { var biomeParams = BiomeTable.Instance.Table[info.Biome]; foreach (var tile in controller.GetMap().GetTiles()) { foreach (var kvp in biomeParams.LandmarkDict) { var roll = RNG.Instance.NextDouble(); if (roll < kvp.Value) { var factory = new LandmarkFactory(); factory.BuildLandmark(kvp.Key, tile); } } } }
public void InitMapEnvironment(CMap controller, MapInitInfo info) { var decoLoader = new DecoLoader(); var biomeParams = BiomeTable.Instance.Table[info.Biome]; foreach (var decoKVP in biomeParams.DecoDict) { foreach (var tile in controller.GetMap().GetTiles()) { var roll = RNG.Instance.NextDouble(); if (roll < decoKVP.Value && !FTile.HasFlag(tile.GetFlags().CurFlags, FTile.Flags.Environment)) { decoLoader.AttachDeco(tile, decoKVP.Key); } } } }
private void InitViews(CMap map, MapInitInfo info) { var builder = new CharViewBuilder(); foreach (var party in map.GetLParties()) { foreach (var c in party.GetChars()) { c.SetView(builder.Build(c.Proxy)); var tile = map.GetMap().GetTileForRow(c.Proxy.LParty, c.Proxy.StartCol); this.RenderChar(c, tile); } } foreach (var party in map.GetRParties()) { foreach (var c in party.GetChars()) { c.SetView(builder.Build(c.Proxy)); var tile = map.GetMap().GetTileForRow(c.Proxy.LParty, c.Proxy.StartCol); this.RenderChar(c, tile); } } }
private void InitArmies(MapInitInfo info) { var loader = new PartyLoader(); loader.Init(this._map, info); }
public void Init(Transform container, CMap map, MapInitInfo info) { this._container = container; this.InitViews(map, info); }