10 public int GetIncome(
Zone z)
12 List<FactionBranch> children =
EClass.pc.faction.GetChildren();
14 int num = children.IndexOf(z.branch);
15 return this.<GetIncome>g__CalcIncome|0_0(z) * 100 / (100 + num * 40);
19 public string GetRankText(
Zone z)
21 int rank = this.GetRank(z);
22 string[] list = Lang.GetList(
"num_rank");
24 if (num >= list.Length)
28 return rank.ToString() + list[num];
32 public int GetRank(
Zone z)
34 foreach (
RankedZone rankedZone
in this.GetList())
36 if (rankedZone.z == z)
38 return rankedZone.rank;
45 public List<RankedZone> GetList()
47 List<RankedZone> list =
new List<RankedZone>();
48 using (Dictionary<int, Spatial>.ValueCollection.Enumerator enumerator =
EClass.game.spatials.map.Values.GetEnumerator())
50 while (enumerator.MoveNext())
53 if ((z.source.value > 0 && z.lv == 0) || z.IsPlayerFaction)
56 if (z.IsPlayerFaction)
58 v = (z as
Zone).branch.Worth;
63 Rand.UseSeed(z.uid, delegate
65 v = z.source.value + EClass.rnd(z.source.value / 10);
81 int num3 = num2 - rankedZone.value;
83 if (rankedZone.value >= 100000000)
87 else if (rankedZone.value >= 10000000)
91 else if (rankedZone.value >= 5000000)
95 else if (rankedZone.value >= 1000000)
99 else if (rankedZone.value >= 500000)
103 else if (rankedZone.value >= 100000)
107 else if (rankedZone.value >= 50000)
111 else if (rankedZone.value >= 10000)
119 num += Mathf.Max(num3 / num4, 1);
120 rankedZone.rank = num;
121 num2 = rankedZone.Value;
128 private int <GetIncome>g__CalcIncome|0_0(
Zone _z)
130 int rank = this.GetRank(_z);
135 return (126 - rank) * 100;