该插件允许玩家/管理员轻松的升级/降级整个建筑物。
权限
- buildinggrades.use - 允许使用指令。
- buildinggrades.admin - 允许绕过所有者和领地权限升级/降级建筑。
- buildinggrades.nocost - 允许玩家无需材料升级建筑。
- buildinggrades.up.all - 允许玩家升级到所有等级的建筑。
- buildinggrades.down.all - 允许玩家降级到所有等级的建筑。
- buildinggrades.down.0 - 允许玩家降级至茅草。
- buildinggrades.down.1 - 允许玩家降级至木质。
- buildinggrades.down.2 - 允许玩家降级至石质。
- buildinggrades.down.3 - 允许玩家降级至铁质。
- buildinggrades.up.1 - 允许玩家升级到木质。
- buildinggrades.up.2 - 允许玩家升级到石质。
- buildinggrades.up.3 - 允许玩家升级到铁质。
- buildinggrades.up.4 - 允许玩家升级到钢铁。
指令
- /up [等级] [过滤] 或 /up [过滤] - 将连接到您正在查看的建筑的每个建筑块升级一个等级或指定等级。例如/up, /up 2, /up 1 wall,/up wall
- /down [等级] [过滤]或者/down [过滤] - 将连接到您正在查看的建筑的每个建筑块降级一个等级或指定等级。例如/down, /down 1, /down 1 wall,/down wall
- /up 或 /down - 升级/降级整个建筑(不会升级彼此靠近的建筑)(即使在大型建筑上也非常快)。
- /upall 或 /downall - 升级/降级从您正在查看的位置开始相互接触的所有建筑(如果多个建筑物彼此太靠近,则都会升级/降级)(对于大型建筑物可能会很慢)
等级
- 茅草:Twigs / 0
- 木质:Wood / 1
- 石质:Stone / 2
- 铁质:Metal / 3
- 钢铁:TopTier / 4
过滤
- 地基:foundation
- 墙壁:wall
- 地板:floor
- 楼梯:stair
- 坡道:roof
- 房顶:ramp
配置文件
JSON:
{
"Settings": {
"Use Teams": false,
"Use Clans": true,
"Use Friends": true,
"Use Raid Blocker (Need NoEscape Plugin)": false,
"Use Combat Blocker (Need NoEscape Plugin)": false,
"Cooldown Exclude Admins": true,
"Upgrade/Downgrade Per Frame": 10
},
"Chat Settings": {
"Upgrade Chat Command": "up",
"Downgrade Chat Command": "down",
"Upgrade All Chat Command": "upall",
"Downgrade All Chat Command": "downall",
"Chat Prefix": "<color=#00FFFF>[BuildingGrades]</color>: ",
"Chat SteamID Icon": 0
},
"Permission Settings": {
"buildinggrades.use": {
"Priority": 0,
"Distance": 10.0,
"Cooldown": 60.0,
"Pay": true
}
},
"Building Block Categories": {
"foundation": [
"assets/prefabs/building core/foundation/foundation.prefab",
"assets/prefabs/building core/foundation.steps/foundation.steps.prefab",
"assets/prefabs/building core/foundation.triangle/foundation.triangle.prefab"
],
"wall": [
"assets/prefabs/building core/wall/wall.prefab",
"assets/prefabs/building core/wall.doorway/wall.doorway.prefab",
"assets/prefabs/building core/wall.frame/wall.frame.prefab",
"assets/prefabs/building core/wall.half/wall.half.prefab",
"assets/prefabs/building core/wall.low/wall.low.prefab",
"assets/prefabs/building core/wall.window/wall.window.prefab"
],
"floor": [
"assets/prefabs/building core/floor/floor.prefab",
"assets/prefabs/building core/floor.frame/floor.frame.prefab",
"assets/prefabs/building core/floor.triangle/floor.triangle.prefab",
"assets/prefabs/building core/floor.triangle.frame/floor.triangle.frame.prefab"
],
"stair": [
"assets/prefabs/building core/stairs.l/block.stair.lshape.prefab",
"assets/prefabs/building core/stairs.spiral/block.stair.spiral.prefab",
"assets/prefabs/building core/stairs.spiral.triangle/block.stair.spiral.triangle.prefab",
"assets/prefabs/building core/stairs.u/block.stair.ushape.prefab"
],
"roof": [
"assets/prefabs/building core/roof/roof.prefab",
"assets/prefabs/building core/roof.triangle/roof.triangle.prefab"
],
"ramp": [
"assets/prefabs/building core/ramp/ramp.prefab"
]
}
}
API
C#:
private bool IsProcessingBuildingBlock(BuildingBlock buildingBlock) // 用于确定建筑块是否正在处理,在“OnStructureUpgrade”Hook中
Hook
C#:
void OnStructureGradeUpdated(BuildingBlock buildingBlock, BasePlayer player, BuildingGrade.Enum oldGrade, BuildingGrade.Enum newGrade)