|
@@ -0,0 +1,40 @@
|
|
|
+using System;
|
|
|
+
|
|
|
+namespace GameLogic.Combat.CombatTool.SceneTool
|
|
|
+{
|
|
|
+ [System.Serializable]
|
|
|
+ public class SceneConfig
|
|
|
+ {
|
|
|
+ public float dis=0.1f;
|
|
|
+ public int minCount;
|
|
|
+ public int maxCount;
|
|
|
+ public SceneObjectConfig[] SceneObjectConfigs;
|
|
|
+
|
|
|
+ private int odds;
|
|
|
+
|
|
|
+ public void Init()
|
|
|
+ {
|
|
|
+ for (int i = 0; i < SceneObjectConfigs.Length; i++)
|
|
|
+ {
|
|
|
+ odds += SceneObjectConfigs[i].odds;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public SceneObjectConfig GetSceneObjectConfig()
|
|
|
+ {
|
|
|
+ int currOdds = CombatCalculateTool.Instance.GetOdd(0, odds);
|
|
|
+ int currAllOdds = 0;
|
|
|
+ for (int i = 0; i < SceneObjectConfigs.Length; i++)
|
|
|
+ {
|
|
|
+ SceneObjectConfig sceneObjectConfig = SceneObjectConfigs[i];
|
|
|
+ currAllOdds += sceneObjectConfig.odds;
|
|
|
+ if (currAllOdds >= currOdds)
|
|
|
+ {
|
|
|
+ return sceneObjectConfig;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|