Newer
Older
DungeonShooting / DungeonShooting_Godot / src / game / GameConfig.cs
  1.  
  2. using Godot;
  3.  
  4. public static class GameConfig
  5. {
  6. // --------------------- 可配置项 ---------------------
  7. /// <summary>
  8. /// 散射计算的默认距离
  9. /// </summary>
  10. public static float ScatteringDistance = 300;
  11. /// <summary>
  12. /// 重力加速度
  13. /// </summary>
  14. public static float G = 250f;
  15.  
  16. // ----------------------- 常量 -----------------------
  17. /// <summary>
  18. /// 连接房间的过道宽度
  19. /// </summary>
  20. public const int CorridorWidth = 4;
  21. /// <summary>
  22. /// 游戏地图网格大小, 值为 16
  23. /// </summary>
  24. public const int TileCellSize = 16;
  25. /// <summary>
  26. /// 游戏地图网格大小, 向量表示
  27. /// </summary>
  28. public static readonly Vector2I TileCellSizeVector2I = new Vector2I(TileCellSize, TileCellSize);
  29. /// <summary>
  30. /// 房间最小间距
  31. /// </summary>
  32. public const int RoomSpace = 4;
  33.  
  34. /// <summary>
  35. /// 地图配置路径
  36. /// </summary>
  37. public const string RoomTileDir = "resource/map/tileMaps/";
  38. /// <summary>
  39. /// 房间TileSet路径
  40. /// </summary>
  41. public const string RoomTileSetDir = "resource/map/tileSet/";
  42. /// <summary>
  43. /// 房间组配置文件名称
  44. /// </summary>
  45. public const string RoomGroupConfigFile = "GroupConfig.json";
  46. /// <summary>
  47. /// TileSet配置文件
  48. /// </summary>
  49. public const string TileSetConfigFile = "TileSetConfig.json";
  50. /// <summary>
  51. /// ui预制体路径
  52. /// </summary>
  53. public const string UiPrefabDir = "prefab/ui/";
  54. /// <summary>
  55. /// ui代码根路径
  56. /// </summary>
  57. public const string UiCodeDir = "src/game/ui/";
  58.  
  59. /// <summary>
  60. /// 配置层级的自定义数据名称
  61. /// </summary>
  62. public const string CustomTileLayerName = "TileLayer";
  63.  
  64. /// <summary>
  65. /// 预览图大小
  66. /// </summary>
  67. public const int PreviewImageSize = 196;
  68.  
  69. /// <summary>
  70. /// 变暗迷雾的透明度值
  71. /// </summary>
  72. public const float DarkFogAlpha = 0.2f;
  73.  
  74. /// <summary>
  75. /// 迷雾过渡时间
  76. /// </summary>
  77. public const float FogTransitionTime = 0.3f;
  78.  
  79. /// <summary>
  80. /// 导航网格代理收缩半径
  81. /// </summary>
  82. public const float NavigationAgentRadius = 6f;
  83.  
  84. /// <summary>
  85. /// 寻路导航单格步长
  86. /// </summary>
  87. public const float NavigationCellSize = 4;
  88. /// <summary>
  89. /// 地形掩码纹理大小, 顶部墙壁/47格地形
  90. /// </summary>
  91. public static readonly Vector2I TerrainBit3x3 = new Vector2I(12, 4);
  92. /// <summary>
  93. /// 地形掩码纹理大小, 13格地形
  94. /// </summary>
  95. public static readonly Vector2I TerrainBit2x2 = new Vector2I(5, 3);
  96. /// <summary>
  97. /// 地形掩码纹理大小, 侧方墙壁
  98. /// </summary>
  99. public static readonly Vector2I TerrainBitMiddle = new Vector2I(4, 2);
  100. /// <summary>
  101. /// 地形掩码纹理大小, 地板
  102. /// </summary>
  103. public static readonly Vector2I TerrainBitFloor = new Vector2I(1, 1);
  104. }