• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

SkywarsX:修订间差异

来自Minecraft插件百科
跳转到导航 跳转到搜索
无编辑摘要
无编辑摘要
 
(未显示同一用户的16个中间版本)
第1行: 第1行:
{{待翻译}}
{{Bukkit Plugin Infobox
|插件名=SkywarsX
|图标=图标无法上传
|版本=4.0
|前置插件=无
|兼容服务端版本=1.7-1.14
|作者=Wazup92
|網址=https://www.spigotmc.org/resources/%E2%99%9B-skywars-x-%E2%99%9B-solo-teams-kits-cages-trails-mystery-box-parties.28120/
}}
[[文件:SkywarsX1.jpg|缩略图|Banner]]
[[文件:SkywarsX1.jpg|缩略图|Banner]]
==介绍==
一个终极的小游戏!
在一瞬间就可以以最简单的方式创建空岛战争房间!
玩家可通过在GUI商店购买或者在神秘礼盒中解锁新的职业,独特的战前玻璃笼子外观和粒子效果。
想要变强?完成成就吧!升级吧!


==介绍==
你可以创建队伍并与你的朋友一起愉快地游戏!
The ultimate minigame for your server! Create arenas with ease and start playing instantly. Unlock new kits, cages, and trails through purchasing them from the awesome gui shop, or through the mystery box. Rank up and earn achievements as you become more powerful. Create parties and play with your friends as a team. Spectate games when you die and have a laugh on your friends performance. Rollback all the grief caused by players and customize the plugin to your liking! All with maximum efficiency.
 
游戏中阵亡后,可以切换旁观者模式并且观摩你的队友的骚操作。
 
OP可以删除玩家作弊获得的内容,
 
这个插件拥有最高的效率!并且可以高度自由定义。


==警告==
==警告==
*Please read the FULL page before purchasing.
*这是一个付费插件,在购买这个插件之前,你最好阅览完整个页面的内容。这是怕你在购买了之后又因为没有某个你想要的功能而后悔,给你带来更麻烦的事情。
*This is so that you don't purchase the plugin, and regret doing so because of a missing feature, or because you misunderstood what the plugin has to offer
*当你购买了这个插件后表明你已经同意了这个插件协议:
*The reviews section is not the place to be asking for help in. When you are in need of help, please use the discussion area, or send me a private message.
不反编译这个插件;
*Purchasing this plugin means that you agree to the plugin agreement found at the bottom of the page!
不将插件在未经作者授权的情况下分享给他人。
*This plugin is VERY customizable, but NOT FULLY, so if you need to translate every single text or letter, you either have to purchase the source, or look else where.
*这个插件已经够高度自定义的了,但是没有达到'''完全'''自由定义。如果你需要翻译插件里显示的每一行、每一个单词,你要么购买这个插件的源码,要么就走开。
*Not all of your suggestions will be taken into consideration. If I feel only you would benefit out of your suggestion it will probably not be added. so some suggestions will straight up be denied and probably never added. and customization requests WILL most likely be rejected. So view what you can change and what you can not CAREFULLY.
*你的建议并不一定会被采纳。如果作者感觉你的建议只是出于你的利益考虑,那就不会采纳。所以如果你发表建议了一个内容很多次但却一只不会被采纳,请不要对此生气。


==特点==
==特点==
*Create as many arenas as you want.
*你想要创建多少房间就创建多少。
*Fully independent! can run by itself. You don't even need multiverse! and it can work with other minigames and plugins, such as factions.
*插件非常独立自主!可以自行运行。你甚至不需要安装多时间插件!还能跟其它小游戏插件兼容!
*Arenas can be solo, or could be teams of 2,3,4,5, anything
*竞技场可以是单人,双人,多人的。
*You can specify a set of potion effects for each arena (Some arenas for example could have infinite Speed I or some might have infinite Strength I and so on)
*你可以自己单独设置某个房间的药水效果(一加入游戏就能获得某些效果,而且一直保持着)
*Bungee Mode, which makes the plugin take over the server and force players to join. If the server has only 1 arena and bungee mode is enabled players will be forced to join that arena and the server updates the MOTD according to the game state and restarts when the game ends
*在群组服模式的时候如果子服只有一个房间,所有在群组服里点击到那个子服的玩家都会被强制加入同一个房间中,不能选择。
*Spectate on death! or join an active game to spectate it
*当玩家阵亡时自动切换成旁观者!当然也可以旁观其它已开始游戏的房间。
*Built-in coins system, but it can also use vault economy
*自带经济(金钱)系统,不过可以兼容Vault经济插件。
*Lobby countdown shortening system if there is a certain number of teams joined
*更多玩家加入某个房间的时候,系统会自动缩短开始游戏倒计时。
*Players can not break blocks below team members
*玩家不能打破队友身下的方块(已经设置好玩家不能坑队友)
*Anti combat log system
*自带防止跑路PVP系统(玩家在被别人打击的时候退出游戏再加入时会被设置为死亡)。
*Can display 1.8 titles and action bar, through TitleManager
*用TitleManager(标题管理器)可以自定义并且代替原有的Tab列表和记分板插件。
*Modify default chest content and set the min and max amount of items that a chest could have
*高度自定义箱子随机生成物品及时间间隔。
*Create your own Chests configuration, and make specific chests use that chest configuration (You can create an infinite amount of chest tiers, and set whatever chest you like to use that tier)
*可以自定义添加和减少开局时箱子给玩家的物品。
*Leaderboards! Create signs that will display top players from many many different stats, and you also can display their skull above these signs, you can also create a holographic leaderboard through HolographicDisplays
*自带排行榜!可以创建随时自动刷新的告示牌排行榜或者悬浮文字排行榜。
*Allow spectators to view players inventories and teleport to them
*阵亡后的旁观者可以随时传送到每个玩家身边并且查看他们的背包。
*Set the coins/exp modifier of players to any number you want! You can also reset their stats! This also applies to offline players
*可以随时设置某个玩家的经验值和金钱,还可以重置某个玩家的数据。支持操作离线玩家的数据哦!
*You can spawn mobs that will not attack you or your teammates and you can also equip them with armor and items through shift right clicking them
*你可以生成一些怪物,不过它们不会攻击你和你的队友。你还可以用装备右键它们来给它们穿上盔甲!
*You can vote for Health and Time and Chests!
*自带箱子物品数量和血量上限投票。
*Amazing rollback system that rollbacks arenas effectively and quickly with little to no lag, using a custom class to decrease memory usage, and a queue system to prevent overloading the server
*神奇的回档系统:不会崩服!不会出错!精准回档!
Killstreaks! You can run your own commands on players once they reach a certain killstreak
*一个世界里可以有多个房间。
*You can have multiple arenas per world
*可以用作生存插件或者其它类似的小游戏。
*Can be used as a survivalgames plugin, or other similar minigame
*游戏结束时赢家头上会放烟花,并且可以在聊天栏中显示获胜者的头像!
*Fireworks ending, with an option to give winners a map and also to display your custom images on that map
*自带高度自定义的商店!
*Customizable shops!
*自带成就系统!
*Achievements! track player stats and award them with your custom prizes.
*支持创建自定义的职业,战前玻璃笼,粒子和其它特殊的内容,不管他们是否有权限!
*Create your own kits, cages, trails, and specify their rarity, cost, name, content, and whether they require a permission or not!
*可自定义的记分板标题
*Animated scoreboard title! (Optional)
*自带世界管理功能:支持导入、创建、删除、传送和列出所有世界。不需要别的插件的支持!甚至可以给你的地图备份!
*Built in world management commands! import/create/delete/teleport/list worlds without the need of other plugins. you can even backup worlds and restore them!
*自带一个警告系统,当玩家做的事情给服务器带来异常时,可以将玩家踢出服务器。
*A warning system, where doing certain activities more than x amount of times will result in the player getting kicked!
*支持UUID和玩家普通ID。
*Supports UUID and normal names as well
*有没有SQL数据库都可以运行。
*Works with MySQL or without!
*可指定什么时候箱子重置。
*Specify when chests should refill and how often
*可存储巨大的玩家信息!从杀人数、金币、赢的次数、死亡数和数据修改次数到破坏方块数、合成数、附魔次数和更多!
*Save so many player stats! starting from kills, coins, wins, deaths, modifier, and such, and ending with blocks placed, blocks broken, items crafted, items enchanted, and many more!
*几乎可以自定义所有显示给玩家的信息,记分板和告示牌都可以自定义文字。
*Customize most of the text that appears to players, such as messages or scoreboard text or even signs text. The lobby scoreboard is completely customizable (The order of lines and type of information displayed)
*自动加入指令可以把玩家放置到当前最佳的游戏房间。
*Autojoin command that will put the players in the best available arena
*自带非常酷的告示牌和玩家排行。
*Cool signs that show the arena state and players count
*自带可自定义玩家内容的基础变量。
*Basic API that allows developers to access players stats and get top players, and also some events
*支持PlaceholderAPI和MVdWPlaceholderAPI插件!
*PlaceholderAPI Support and MVdWPlaceholderAPI Support
*非常酷的记分板!
*Cool scoreboards!
*自带跟踪器!
*Tracking compass!
*神秘的礼盒!你可以用一个很低的价格购买神秘的礼盒并获得随机的物品!而且还是可以自由定义的。
*Mystery Box! You can unlock random items for a low cost with a very cool animation.
*自带升级系统!你可以设置当玩家到达什么等级时可以执行什么命令,拥有什么权限。
*Ranking system! you can run custom commands when a player reaches a certain rank
*轻量级的冷却协调。
*Detailed and lightweight cooldown system
*自带非常酷的GUI界面而且很容易使用。
*Very cool GUI's that are simple and easy to use
*自带广播系统,可以让玩家在游戏过程中看到你的网站。
*Built in broadcaster, so you can display your tips and tricks or advertise your website
*分开的聊天系统!每个房间有每个房间的聊天系统,不会看到别的房间的聊天。
*Separate chats! People in different arenas have their own chat
*可以@人!如果你有权限,你在一句话前面输入@可以全服聊天!
*Global chat! Starting a message with @ will send it to everyone (If the user has permission)
*自带一个神奇的GUI界面来管理和创造你自己的队伍!队伍拥有的功能庞大。
*Create parties and invite players and manage all party settings through an amazing gui! Parties FULLY use GUI's without a single command. You can also use the party chat feature if the message starts with an exclamation mark
*自定义的队伍位置,并且可以限制队伍位置数量和权限。
*Customize party slots, and set certain amount of slots to certain permissions
*旁观者可以加入其它房间!
*Spectators can instantly join a new game
*用一把弓朝一个玩家射箭可以显示那个玩家的剩余血量。
*Hitting a player with an arrow will show that player health
*自带强大的GUI,可以随时在游戏中、大厅中用背包里的菜单来打开。
*GUI's that you can scroll through, this allows to display large amount of items in a single inventory
*支持创建悬浮文字统计数据和排行榜!
*Create holographic stats and leaderboard!
*拥有22个默认职业,51个默认战前玻璃笼,50个默认粒子,53个默认成就!
*22 default kit, 51 default cage, 50 default trail, 53 default achievements!
*支持其它附属插件的加入例如“幸运方块”。
*You can also add your custom game modes easily. For example you can add LuckyBlock mode easily by dropping a LuckyBlock plugin and adding your lucky blocks into the arena!
*精致的,充分设计过的插件,可以同时容纳多名玩家。
*Smooth, well designed, created to be able to handle large amount of players
*可以强制开始/停止某个房间,还可以使用一个指令来重载整个服务器。
*Force start/stop arenas, and reload the plugin with a simple command rather than reloading the whole server
*在游戏过程中离开房间的玩家,背包里的物品会掉落在地上。
*Edit/Create/Delete/List chest types/categories on the fly with a simple command
*可设置某些房间可以飞行!
*Players that leave while in-game will drop their items!
*简单的设计,需要你充分利用GUI界面来操作。
*Edit arenas on the fly!
*'''你真的想继续读下去吗?作者:我都懒得打那么多字了......这个插件已经包装好了。'''
*Heavily dependent on gui's, to keep things simple
*Are you really still reading? I mean... I'm tired of typing all that! so in simple and easy conclusion, THIS PLUGIN IS PACKED


==配置==
==配置==
第81行: 第100行:


==指令&权限==
==指令&权限==
*Format: /Command -> Permission
'''统一格式: /指令 -> 权限'''
*/Skywars | /SW -> None
*/Skywars | /SW ->
*/Skywars join -> None
*/Skywars join ->
*/Skywars leave -> None
*/Skywars leave ->
*/Skywars autojoin -> None
*/Skywars autojoin ->
*/Skywars list -> None
*/Skywars list ->
*/Skywars admin -> skywars.admin
*/Skywars admin -> skywars.admin
*/Skywars setlobby -> skywars.setlobby
*/Skywars setlobby -> skywars.setlobby
第118行: 第137行:
==教程==
==教程==
===安装教程===
===安装教程===
You first want to set the lobby location by doing /sw setlobby
首先使用/sw setlobby来设置大厅位置,这样玩家使用/sw指令来加入大厅的时候,他们将被传送到那里。
so that when players do /sw join they will be teleported there
now you should create some arenas


start by using /sw wand and use the tool given to select the 2 corners surrounding your map.
然后你应该创建一些房间。首先使用/sw wand绑定指定的工具,接着用那个工具点击地图周围的两个角。选择好了两个角后,使用/sw create <name> <team size> <min teams> <max teams>指令来创建一个房间。这样就可以创建一个自定义名称的房间了。
Once you have selected the 2 corners, create the arena using /sw create <name> <team size> <min teams> <max teams>
This will create a new arena with your defined name.
Team size is the amount of players per team, if it was set to 1 then the arena is basically solo
Min teams is the minimum amount of teams required for the game to start the countdown. and Max teams on the other hand is the maximum amount of teams the arena can handle at a time


Once the creation process is over, you can now start adding spawnpoints using /sw addspawn <arena>
队伍规模是指每个队伍的玩家数量,如果它被设置为1,那么就是当前房间在开始倒计时之前每个队伍需要达到的最小玩家数量。Max值是一个队伍最大玩家数量。
Keep in mind that the plugin will generate the cage, so you shouldn't have built in cages in the arena
after you have added your spawnpoints, you can use /sw edit <arena> to enable the arena and change some other settings.


The arena is now ready to be used, but you can also add a join sign for example, or make chests in the middle more powerful.
现在你可以使用/sw addspawn <arena>指令开始添加玩家出生地点了。请记住,玩家在房间开始游戏之前都是呆在玻璃笼子里的,所以插件会自动生成一个笼子。在添加了出生地点后,你不需要在房间内建造玻璃笼子。
To do that, you should create a new Chest type, using the command /sw chestmanager create normal <Name>
this will create new chest type and open up a gui for you, you can add your items in that gui, and don't forget to click 'Save & Apply'
After you create your custom chest type, you have to specify which chests are gonna use that chest type, you can do so by doing /sw chestmanager tool <Name>, this will give you a tool that allows you to set specific chests to that chest type, but what if there are too many chests in the middle and you are just lazy? you can select the whole middle area using the wand, and then you can do /sw chestmanager updateregion <Name>, this will set all chests within your selection to the chest type that you specified.


If you want to create a new chest category that people can vote for, then use the same command that you used to create a chest type, but this time don't say the category is 'normal' and instead name it your self (/sw chestmanager create <Name>). This will create a new chest category that has a 'default' chest type where you can put items.
使用/sw edit <arena>指令可以激活房间并更改一些其它的设置。


When you add a chest type such as 'Tier2' to a category such as 'Normal' you must add a chest type named 'Tier2' for the other categories. So that no matter which category got the most votes, the chests labeled 'Tier2' will have a location to take items from.
现在,这个房间已经可以使用了。不过你可以在房间地图中心创建一个中心点,生成更多的箱子及物品在地图中心(好像空岛战争都有这个吧)。如果你需要这样的功能,使用/sw chestmanager create normal <Name>指令创建一个普通箱子,然后插件会为你打开一个GUI界面,你就可以在那个GUI界面中添加箱子里的物品了。点击“保存并应用”创建自定义箱子后,你必须指定哪些箱子在生成的时候会生成那些物品。使用/sw chestmanager tool <Name>指令来设置。执行完这个指令后,插件会给予你一个工具,来点击某些箱子应用你的设置。如果你很懒,你可以用“魔杖”选择之后并且执行/sw chestmanager updateregion <Name>指令,就可以应用你的设置到点击过的箱子了。


You can also set the location where spectators will be teleported to, but this is optional because if it's not set they will teleport to a random location inside the arena region. To set a specific location for spectators use /sw setspectators <Arena>
如果你想创建一个玩家可以投票的新箱子类型,使用跟上面一样的指令,不过这次不要写是“normal”而是将其命名为你自己想要的名字。/ sw chestmanager create <Name> 来创建一个新的箱子类型,同样有“normal”箱子的功能,您可以自由地在里面添加物品。


You could also use the worldmanager to backup your worlds just incase anything went wrong :)
例子:当你将“Tier2”等箱子类型添加到“normal”等箱子类型时,你必须给其他类型添加名为“Tier2”的箱子类型。因此,无论哪个类型的箱子获得的玩家投票最多,标有“Tier2”的箱子都会有一个获取物品的地方。


If you want to make all players automatically join skywars when they join your server you need to enable bungee mode in config.yml! If you have a bungee cord and a lobby system, This plugin will only be on your game server and NOT in your hub server, if you want to join through signs from your hub server, then you need to have a plugin such as TeleportSigns in your hub.
你还可以设置旁观者将被传送的地点。这是可选的,因为如果没有设置,旁观者将会传送到房间的随机位置。要为旁观者设置传送地点,使用/sw setspectors <Arena>指令。
 
如果你怕出现任何问题导致世界丢失,你可以使用WorldManager来备份你的世界。:)
 
如果你想让所有玩家在加入服务器的时候自动加入空岛战争房间,你需要在config.yml中启用bungee模式!如果您有bungee cord和大厅插件,这个插件就只会在您的子服上,而不是主服务器上。如果你想用告示牌让玩家从主服务器到空岛战争子服,你就需要有一个插件,比如说TeleportSigns插件。SkywarsX插件将不提供此功能。


===告示牌===
===告示牌===
To create Skywars signs, the first line has to be [SW]
想要创建空岛战争传送牌,告示牌的第一行必须是[SW]


To create join signs for the lobby, second line has to be 'join'
想要给大厅创建空岛战争传送牌,告示牌的第二行必须是'join'


To create join signs for arenas, second line has to be 'join'
想要给房间创建空岛战争传送牌,告示牌第二行必须是'join'
while the third line must define the arena name
同时第三行要写房间的名字。


To create leave signs, second line has to be 'leave'
想要创建离开的牌子,告示牌第二行必须是'leave'


To create autojoin signs, second line has to be 'autojoin'
想要创建随机加入房间的牌子,告示牌第二行必须是'autojoin'
In this type of signs, you can leave the third line empty, or you can specify 'Solo' or 'Team'
这种随机加入房间的牌子第三行可以留空,或者写'Solo''Team'


To create leaderboard signs, second line has to be 'top' while the third line must define the stat that you want the plugin to order players stats by. and fourth line is the rank you are looking for!
想要创建排行榜牌子,告示牌第二行必须写'top',然后第三行必须要写数据名称,第四行写要显示第几名!
Example:
[sw]
top
kills
1


This will display the top killer!
样例:
for a list of stats that you can use, simply keep the third line empty and the plugin will show you a list.
[sw]
top
kills
1


You can also add a skull above the sign, and when the leaderboard updates, the skull will display players skins
这样会显示杀人数最多的玩家!
 
如果你想要玩家点击牌子能自己选择数据类型来查看排行榜,告示牌的第三行要留空。
 
你也可以在排行榜告示牌的上方放置一个头颅,这样每次排名有所变化时插件会把那个头颅自动变换成玩家的头颅。


==截图==
==截图==
第176行: 第190行:


==其它信息==
==其它信息==
This plugin works from 1.7.9 and upwards
这个插件支持1.7.9及以上版本Java服务器。


Any plugin that prevents teleporting while in combat or uses scoreboard features such as teams and prefixes may conflict with Skywars
任何在游戏过程中会传送某些玩家的插件可能会被SkywarsX插件阻止,也有可能会发生冲突。


Using mysql is highly recommended as it increases the performance and protects you from some issues
作者强力推荐使用Mysql数据库,因为这样可以加快SkywarsX的处理速度。


If you want any holographic feature, you will need to install HolographicDisplays
如果你需要悬浮文字,请安装HolographicDisplays插件。


If you want to use the Holographic Stats feature, you will need to install HolographicDisplays along ProtocolLib
如果你需要悬浮文字统计数据,请安装HolographicDisplays和ProtocolLib插件。


There are some extra permissions!
===额外的权限===
skywars.admin to view admin commands and receive update notifications
*skywars.admin可以使用所有SkywarsX的admin指令并且检查SkywarsX是否有更新。
skywars.createsigns to create skywars signs
*skywars.createsigns可以创建空战的告示牌传送。
skywars.breaksigns to break skywars signs
*skywars.breaksigns可以破坏空战的告示牌传送。
skywars.unblockcmds to be able to use commands while in game
*skywars.unblockcmds可以在游戏中使用指令。
skywars.vote.health to be able to vote for health
*skywars.vote.health可以给血量上限投票。
skywars.vote.time to be able to vote for time
*skywars.vote.time可以给时间上限投票。(这个功能在特点里作者没说)
skywars.vote.chests to be able to vote for items
*skywars.vote.chests可以给箱子物品倍数投票。
skywars.globalchat allows the player to start a message with @ to be sent to everyone if the chat separation features are enabled in config.yml
*skywars.globalchat让玩家可以全服聊天(在一句话前加@就可以了)


If vault is enabled in the config, Leaderboards will not show 'Coins' as the player vault money, it will still display the player coins


Massive thank you to Il_Picasso from mc.comugamers.com
有些个别的特点需要在config.yml文件里激活。
for providing me a great testing server!


Ask about any concern in the discussion area before purchasing.
如果“vault”的值在配置文件中被设置成了“enabled”,统计数据就不会显示“Coins”了,而是显示Vault插件配置中的金钱名称。


Im sorry for any grammar mistakes! im not English.
如果你有任何疑惑,购买插件之前在讨论里提出来.


Before posting a negative review, please ask for help!
作者:''对不起!我不是讲英语的,所以部分文字语法可能不太好。''


==变量==
==变量==
第221行: 第233行:
  import me.wazup.skywars.Skywars;
  import me.wazup.skywars.Skywars;
  import me.wazup.skywars.SkywarsAPI;
  import me.wazup.skywars.SkywarsAPI;
  public class Addon extends JavaPlugin {
  public class Addon extends JavaPlugin {
   public void example(){
   public void example(){
   SkywarsAPI api = Skywars.api;
   SkywarsAPI api = Skywars.api;
 
   //获取一个玩家的数据
   //Get a player playerdata
   Player p = Bukkit.getPlayer("Wazup92");
   Player p = Bukkit.getPlayer("Wazup92");
   PlayerData data = api.getPlayerData(p);
   PlayerData data = api.getPlayerData(p);
   //Modifying some of their stats
   //Modifying some of their stats
   data.addCoins(p, 50);
   data.addCoins(p, 50);
   data.kills += 10;
   data.kills += 10;
 
   //一些布尔值
   //Some booleans
   api.isInArena(p);
   api.isInArena(p);
   api.isSpectating(p);
   api.isSpectating(p);
   api.isPlaying(p);
   api.isPlaying(p);
 
   //获取玩家排行榜
   //Getting top players
   //首先你必须加载所有玩家的数据,这个不是同步的。
   //First you have to load all players data, this should be Async
   try {
   try {
   HashMap<String, String> playersData = api.getAllPlayersData();
   HashMap<String, String> playersData = api.getAllPlayersData();
   //You can now get top players out of the playersData, ordered by a specfic stat
   //现在你可以将排行榜上的玩家数据导出,获得一组新的统计数据。
   //If the third argument (int) is bigger than the amount of entries in the playersData hashmap, it will be filled with 'NO_PLAYER'
   //如果第三个变量(int)长度比整个玩家数据的哈希图还大,它会变成'NO_PLAYER'(没有玩家)
   List<Entry<String, Integer>> top = api.getTopPlayers(playersData, Stat.KILLS, 10);
   List<Entry<String, Integer>> top = api.getTopPlayers(playersData, Stat.KILLS, 10);
   //Top now contains the top 10 players, ordered by their kills stat
   //现在得到了前十名的杀人数数据
   //Entry key is the player name, and the entry value is their score
   //入口密码是玩家的I,入口的值是他们的分数
   for(int i = 0; i < top.size(); i++){
   for(int i = 0; i < top.size(); i++){
   Bukkit.broadcastMessage("# " + (i+1) + " is " + top.get(i).getKey() + " with a score of " + top.get(i).getValue());
   Bukkit.broadcastMessage("# " + (i+1) + " is " + top.get(i).getKey() + " with a score of " + top.get(i).getValue());
第255行: 第261行:
   e.printStackTrace();
   e.printStackTrace();
   }
   }
   //If you want to modify offline players stats, then you have to use a different method, because you can't use the PlayerData class on offline players
   //如果你想修改离线玩家的数据,你就需要使用一个不同的方法了。
   //The following method returns true if the stat was updated, and it returns false if the player name wasn't found or the stat wasn't updated for some reason
   //如果统计数据已更新,以下方法的返回值会是true;反之返回值会是fals。
   //The boolean at the end 'increment' is whether you want to SET their stat to the give value, or you want to add it up
   //你可以设置或者加入结尾的那个'increment'布尔值
   try {
   try {
   boolean updated = api.modifyOfflinePlayerStat("Wazup92", Stat.COINS, 50, true);
   boolean updated = api.modifyOfflinePlayerStat("Wazup92", Stat.COINS, 50, true);
第263行: 第269行:
   e.printStackTrace();
   e.printStackTrace();
   }
   }
   }
   }
}


}
===变量列表===
===变量列表===
For the lobby scoreboard customization in (customization.yml) the placeholders are as follows:
大厅的记分板(customization.yml)可用变量:
  %kills%, %deaths%, %accuracy%, %wins%, %modifier%, %projectiles_launched%, %projectiles_hit%, %player_exp%, %player_rank%, %blocks_placed%, %blocks_broken%, %selected_kit%, %selected_trail%,  
  %kills%, %deaths%, %accuracy%, %wins%, %modifier%, %projectiles_launched%, %projectiles_hit%, %player_exp%, %player_rank%, %blocks_placed%, %blocks_broken%, %selected_kit%, %selected_trail%,  
  %selected_cage%,
  %selected_cage%,
这样变量只支持PlaceholderAPI,如果你想要用MVdWPlaceholderAPI的变量,同样使用以上的变量名,不过要把变量名开头的“%”改成“{”,结尾的“%”改成“}”。


The placeholders mentioned below are for PlaceholderAPI by clip, if you wanted to use placeholders for MVdWPlaceholderAPI by maximvdw use the same ones below but replace the first % with { and the last % with }.
不包含玩家的特殊变量:
 
  %skywars_players_count% - 统计所有在空岛战争中游玩过的玩家数量
Not player specific placeholders:
  %skywars_parties_count% - 统计所有队伍数量
  %skywars_players_count% - Gives the total amount of players in skywars
  %skywars_lobby_players_count% 统计在大厅中的玩家数
  %skywars_parties_count% - Gives the total amount of parties created
  %skywars_arenas_count% 统计所有房间数量
  %skywars_lobby_players_count% Gives the total amount of players in the lobby
  %skywars_kits_count% 统计所有职业数量
  %skywars_arenas_count% Gives the total amount of arenas created
  %skywars_trails_count% 统计所有粒子数量
  %skywars_kits_count% Gives the total amount of kits created
  %skywars_cages_count% 统计所有战前玻璃笼的数量
  %skywars_trails_count% Gives the total amount of trails created
跟玩家有关的变量:
  %skywars_cages_count% Gives the total amount of cages created
 
Player specific placeholders:
  %skywars_kills%, %skywars_deaths%, %skywars_accuracy%, %skywars_wins%, %skywars_modifier%, %skywars_projectiles_launched%, %skywars_projectiles_hit%, %skywars_player_exp%, %skywars_player_rank%,  
  %skywars_kills%, %skywars_deaths%, %skywars_accuracy%, %skywars_wins%, %skywars_modifier%, %skywars_projectiles_launched%, %skywars_projectiles_hit%, %skywars_player_exp%, %skywars_player_rank%,  
  %skywars_blocks_placed%, %skywars_blocks_broken%, %skywars_arena%, %skywars_party_leader%, %skywars_selected_kit%, %skywars_selected_trail%, %skywars_selected_cage%
  %skywars_blocks_placed%, %skywars_blocks_broken%, %skywars_arena%, %skywars_party_leader%, %skywars_selected_kit%, %skywars_selected_trail%, %skywars_selected_cage%

2019年8月29日 (四) 02:11的最新版本

SkywarsX
图标无法上传
外文名SkywarsX
作者Wazup92
插件类型Spigot / CraftBukkit
最新版本4.0
兼容服务端1.7-1.14
前置插件
源地址http://dev.bukkit.org/bukkit-plugins/SkywarsX
Banner

介绍

一个终极的小游戏!

在一瞬间就可以以最简单的方式创建空岛战争房间!

玩家可通过在GUI商店购买或者在神秘礼盒中解锁新的职业,独特的战前玻璃笼子外观和粒子效果。

想要变强?完成成就吧!升级吧!

你可以创建队伍并与你的朋友一起愉快地游戏!

游戏中阵亡后,可以切换旁观者模式并且观摩你的队友的骚操作。

OP可以删除玩家作弊获得的内容,

这个插件拥有最高的效率!并且可以高度自由定义。

警告

  • 这是一个付费插件,在购买这个插件之前,你最好阅览完整个页面的内容。这是怕你在购买了之后又因为没有某个你想要的功能而后悔,给你带来更麻烦的事情。
  • 当你购买了这个插件后表明你已经同意了这个插件协议:
不反编译这个插件;
不将插件在未经作者授权的情况下分享给他人。
  • 这个插件已经够高度自定义的了,但是没有达到完全自由定义。如果你需要翻译插件里显示的每一行、每一个单词,你要么购买这个插件的源码,要么就走开。
  • 你的建议并不一定会被采纳。如果作者感觉你的建议只是出于你的利益考虑,那就不会采纳。所以如果你发表建议了一个内容很多次但却一只不会被采纳,请不要对此生气。

特点

  • 你想要创建多少房间就创建多少。
  • 插件非常独立自主!可以自行运行。你甚至不需要安装多时间插件!还能跟其它小游戏插件兼容!
  • 竞技场可以是单人,双人,多人的。
  • 你可以自己单独设置某个房间的药水效果(一加入游戏就能获得某些效果,而且一直保持着)
  • 在群组服模式的时候如果子服只有一个房间,所有在群组服里点击到那个子服的玩家都会被强制加入同一个房间中,不能选择。
  • 当玩家阵亡时自动切换成旁观者!当然也可以旁观其它已开始游戏的房间。
  • 自带经济(金钱)系统,不过可以兼容Vault经济插件。
  • 更多玩家加入某个房间的时候,系统会自动缩短开始游戏倒计时。
  • 玩家不能打破队友身下的方块(已经设置好玩家不能坑队友)
  • 自带防止跑路PVP系统(玩家在被别人打击的时候退出游戏再加入时会被设置为死亡)。
  • 用TitleManager(标题管理器)可以自定义并且代替原有的Tab列表和记分板插件。
  • 高度自定义箱子随机生成物品及时间间隔。
  • 可以自定义添加和减少开局时箱子给玩家的物品。
  • 自带排行榜!可以创建随时自动刷新的告示牌排行榜或者悬浮文字排行榜。
  • 阵亡后的旁观者可以随时传送到每个玩家身边并且查看他们的背包。
  • 可以随时设置某个玩家的经验值和金钱,还可以重置某个玩家的数据。支持操作离线玩家的数据哦!
  • 你可以生成一些怪物,不过它们不会攻击你和你的队友。你还可以用装备右键它们来给它们穿上盔甲!
  • 自带箱子物品数量和血量上限投票。
  • 神奇的回档系统:不会崩服!不会出错!精准回档!
  • 一个世界里可以有多个房间。
  • 可以用作生存插件或者其它类似的小游戏。
  • 游戏结束时赢家头上会放烟花,并且可以在聊天栏中显示获胜者的头像!
  • 自带高度自定义的商店!
  • 自带成就系统!
  • 支持创建自定义的职业,战前玻璃笼,粒子和其它特殊的内容,不管他们是否有权限!
  • 可自定义的记分板标题
  • 自带世界管理功能:支持导入、创建、删除、传送和列出所有世界。不需要别的插件的支持!甚至可以给你的地图备份!
  • 自带一个警告系统,当玩家做的事情给服务器带来异常时,可以将玩家踢出服务器。
  • 支持UUID和玩家普通ID。
  • 有没有SQL数据库都可以运行。
  • 可指定什么时候箱子重置。
  • 可存储巨大的玩家信息!从杀人数、金币、赢的次数、死亡数和数据修改次数到破坏方块数、合成数、附魔次数和更多!
  • 几乎可以自定义所有显示给玩家的信息,记分板和告示牌都可以自定义文字。
  • 自动加入指令可以把玩家放置到当前最佳的游戏房间。
  • 自带非常酷的告示牌和玩家排行。
  • 自带可自定义玩家内容的基础变量。
  • 支持PlaceholderAPI和MVdWPlaceholderAPI插件!
  • 非常酷的记分板!
  • 自带跟踪器!
  • 神秘的礼盒!你可以用一个很低的价格购买神秘的礼盒并获得随机的物品!而且还是可以自由定义的。
  • 自带升级系统!你可以设置当玩家到达什么等级时可以执行什么命令,拥有什么权限。
  • 轻量级的冷却协调。
  • 自带非常酷的GUI界面而且很容易使用。
  • 自带广播系统,可以让玩家在游戏过程中看到你的网站。
  • 分开的聊天系统!每个房间有每个房间的聊天系统,不会看到别的房间的聊天。
  • 可以@人!如果你有权限,你在一句话前面输入@可以全服聊天!
  • 自带一个神奇的GUI界面来管理和创造你自己的队伍!队伍拥有的功能庞大。
  • 自定义的队伍位置,并且可以限制队伍位置数量和权限。
  • 旁观者可以加入其它房间!
  • 用一把弓朝一个玩家射箭可以显示那个玩家的剩余血量。
  • 自带强大的GUI,可以随时在游戏中、大厅中用背包里的菜单来打开。
  • 支持创建悬浮文字统计数据和排行榜!
  • 拥有22个默认职业,51个默认战前玻璃笼,50个默认粒子,53个默认成就!
  • 支持其它附属插件的加入例如“幸运方块”。
  • 精致的,充分设计过的插件,可以同时容纳多名玩家。
  • 可以强制开始/停止某个房间,还可以使用一个指令来重载整个服务器。
  • 在游戏过程中离开房间的玩家,背包里的物品会掉落在地上。
  • 可设置某些房间可以飞行!
  • 简单的设计,需要你充分利用GUI界面来操作。
  • 你真的想继续读下去吗?作者:我都懒得打那么多字了......这个插件已经包装好了。

配置

配置文件过多。请前往[SkywarsX/配置文件]

指令&权限

统一格式: /指令 -> 权限

  • /Skywars | /SW -> 无
  • /Skywars join -> 无
  • /Skywars leave -> 无
  • /Skywars autojoin -> 无
  • /Skywars list -> 无
  • /Skywars admin -> skywars.admin
  • /Skywars setlobby -> skywars.setlobby
  • /Skywars wand -> skywars.wand
  • /Skywars create -> skywars.create
  • /Skywars delete -> skywars.delete
  • /Skywars addspawn -> skywars.addspawn
  • /Skywars removespawn -> skywars.removespawn
  • /Skywars start -> skywars.start
  • /Skywars stop -> skywars.stop
  • /Skywars setspectators -> skywars.setspectators
  • /Skywars coins -> skywars.coins
  • /Skywars setmodifier -> skywars.setmodifier
  • /Skywars holograms -> skywars.holograms
  • /Skywars reset -> skywars.reset
  • /Skywars edit -> skywars.edit
  • /Skywars editmode -> skywars.editmode
  • /Skywars reload -> skywars.reload
  • /Skywars updatereigon -> skywars.updateregion
  • /Skywars chestmanager -> skywars.chestmanager
  • /Skywars worldmanager | wm -> skywars.worldmanager

游戏视频

  • 这些是原帖作者给出的游戏视频:

[Gameplay + Romanian Commentary (v1.5)]

[Gameplay + Music (v1.7)]

[Gameplay + Music (v1.0)]

教程

安装教程

首先使用/sw setlobby来设置大厅位置,这样玩家使用/sw指令来加入大厅的时候,他们将被传送到那里。

然后你应该创建一些房间。首先使用/sw wand绑定指定的工具,接着用那个工具点击地图周围的两个角。选择好了两个角后,使用/sw create <name> <team size> <min teams> <max teams>指令来创建一个房间。这样就可以创建一个自定义名称的房间了。

队伍规模是指每个队伍的玩家数量,如果它被设置为1,那么就是当前房间在开始倒计时之前每个队伍需要达到的最小玩家数量。Max值是一个队伍最大玩家数量。

现在你可以使用/sw addspawn <arena>指令开始添加玩家出生地点了。请记住,玩家在房间开始游戏之前都是呆在玻璃笼子里的,所以插件会自动生成一个笼子。在添加了出生地点后,你不需要在房间内建造玻璃笼子。

使用/sw edit <arena>指令可以激活房间并更改一些其它的设置。

现在,这个房间已经可以使用了。不过你可以在房间地图中心创建一个中心点,生成更多的箱子及物品在地图中心(好像空岛战争都有这个吧)。如果你需要这样的功能,使用/sw chestmanager create normal <Name>指令创建一个普通箱子,然后插件会为你打开一个GUI界面,你就可以在那个GUI界面中添加箱子里的物品了。点击“保存并应用”创建自定义箱子后,你必须指定哪些箱子在生成的时候会生成那些物品。使用/sw chestmanager tool <Name>指令来设置。执行完这个指令后,插件会给予你一个工具,来点击某些箱子应用你的设置。如果你很懒,你可以用“魔杖”选择之后并且执行/sw chestmanager updateregion <Name>指令,就可以应用你的设置到点击过的箱子了。

如果你想创建一个玩家可以投票的新箱子类型,使用跟上面一样的指令,不过这次不要写是“normal”而是将其命名为你自己想要的名字。/ sw chestmanager create <Name> 来创建一个新的箱子类型,同样有“normal”箱子的功能,您可以自由地在里面添加物品。

例子:当你将“Tier2”等箱子类型添加到“normal”等箱子类型时,你必须给其他类型添加名为“Tier2”的箱子类型。因此,无论哪个类型的箱子获得的玩家投票最多,标有“Tier2”的箱子都会有一个获取物品的地方。

你还可以设置旁观者将被传送的地点。这是可选的,因为如果没有设置,旁观者将会传送到房间的随机位置。要为旁观者设置传送地点,使用/sw setspectors <Arena>指令。

如果你怕出现任何问题导致世界丢失,你可以使用WorldManager来备份你的世界。:)

如果你想让所有玩家在加入服务器的时候自动加入空岛战争房间,你需要在config.yml中启用bungee模式!如果您有bungee cord和大厅插件,这个插件就只会在您的子服上,而不是主服务器上。如果你想用告示牌让玩家从主服务器到空岛战争子服,你就需要有一个插件,比如说TeleportSigns插件。SkywarsX插件将不提供此功能。

告示牌

想要创建空岛战争传送牌,告示牌的第一行必须是[SW]。

想要给大厅创建空岛战争传送牌,告示牌的第二行必须是'join'。

想要给房间创建空岛战争传送牌,告示牌第二行必须是'join', 同时第三行要写房间的名字。

想要创建离开的牌子,告示牌第二行必须是'leave'

想要创建随机加入房间的牌子,告示牌第二行必须是'autojoin'。 这种随机加入房间的牌子第三行可以留空,或者写'Solo'或'Team'。

想要创建排行榜牌子,告示牌第二行必须写'top',然后第三行必须要写数据名称,第四行写要显示第几名!

样例:

[sw]
top
kills
1

这样会显示杀人数最多的玩家!

如果你想要玩家点击牌子能自己选择数据类型来查看排行榜,告示牌的第三行要留空。

你也可以在排行榜告示牌的上方放置一个头颅,这样每次排名有所变化时插件会把那个头颅自动变换成玩家的头颅。

截图

图片过多,请前往[原帖]观看

其它信息

这个插件支持1.7.9及以上版本Java服务器。

任何在游戏过程中会传送某些玩家的插件可能会被SkywarsX插件阻止,也有可能会发生冲突。

作者强力推荐使用Mysql数据库,因为这样可以加快SkywarsX的处理速度。

如果你需要悬浮文字,请安装HolographicDisplays插件。

如果你需要悬浮文字统计数据,请安装HolographicDisplays和ProtocolLib插件。

额外的权限

  • skywars.admin可以使用所有SkywarsX的admin指令并且检查SkywarsX是否有更新。
  • skywars.createsigns可以创建空战的告示牌传送。
  • skywars.breaksigns可以破坏空战的告示牌传送。
  • skywars.unblockcmds可以在游戏中使用指令。
  • skywars.vote.health可以给血量上限投票。
  • skywars.vote.time可以给时间上限投票。(这个功能在特点里作者没说)
  • skywars.vote.chests可以给箱子物品倍数投票。
  • skywars.globalchat让玩家可以全服聊天(在一句话前加@就可以了)


有些个别的特点需要在config.yml文件里激活。

如果“vault”的值在配置文件中被设置成了“enabled”,统计数据就不会显示“Coins”了,而是显示Vault插件配置中的金钱名称。

如果你有任何疑惑,购买插件之前在讨论里提出来.

作者:对不起!我不是讲英语的,所以部分文字语法可能不太好。

变量

代码

package me.wazup.addon;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.List;
import java.util.Map.Entry;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import me.wazup.skywars.Enums.Stat;
import me.wazup.skywars.PlayerData;
import me.wazup.skywars.Skywars;
import me.wazup.skywars.SkywarsAPI;
public class Addon extends JavaPlugin {
 public void example(){
 SkywarsAPI api = Skywars.api;
 //获取一个玩家的数据
 Player p = Bukkit.getPlayer("Wazup92");
 PlayerData data = api.getPlayerData(p);
 //Modifying some of their stats
 data.addCoins(p, 50);
 data.kills += 10;
 //一些布尔值
 api.isInArena(p);
 api.isSpectating(p);
 api.isPlaying(p);
 //获取玩家排行榜
 //首先你必须加载所有玩家的数据,这个不是同步的。
 try {
 HashMap<String, String> playersData = api.getAllPlayersData();
 //现在你可以将排行榜上的玩家数据导出,获得一组新的统计数据。
 //如果第三个变量(int)长度比整个玩家数据的哈希图还大,它会变成'NO_PLAYER'(没有玩家)
 List<Entry<String, Integer>> top = api.getTopPlayers(playersData, Stat.KILLS, 10);
 //现在得到了前十名的杀人数数据
 //入口密码是玩家的I,入口的值是他们的分数
 for(int i = 0; i < top.size(); i++){
 Bukkit.broadcastMessage("# " + (i+1) + " is " + top.get(i).getKey() + " with a score of " + top.get(i).getValue());
 }
 } catch (SQLException e){
 e.printStackTrace();
 }
 //如果你想修改离线玩家的数据,你就需要使用一个不同的方法了。
 //如果统计数据已更新,以下方法的返回值会是true;反之返回值会是fals。
 //你可以设置或者加入结尾的那个'increment'布尔值
 try {
 boolean updated = api.modifyOfflinePlayerStat("Wazup92", Stat.COINS, 50, true);
 } catch (SQLException e){
 e.printStackTrace();
 }
 }
}

变量列表

大厅的记分板(customization.yml)可用变量:

%kills%, %deaths%, %accuracy%, %wins%, %modifier%, %projectiles_launched%, %projectiles_hit%, %player_exp%, %player_rank%, %blocks_placed%, %blocks_broken%, %selected_kit%, %selected_trail%, 
%selected_cage%,

这样变量只支持PlaceholderAPI,如果你想要用MVdWPlaceholderAPI的变量,同样使用以上的变量名,不过要把变量名开头的“%”改成“{”,结尾的“%”改成“}”。

不包含玩家的特殊变量:

%skywars_players_count% - 统计所有在空岛战争中游玩过的玩家数量
%skywars_parties_count% - 统计所有队伍数量
%skywars_lobby_players_count% 统计在大厅中的玩家数
%skywars_arenas_count% 统计所有房间数量
%skywars_kits_count% 统计所有职业数量
%skywars_trails_count% 统计所有粒子数量
%skywars_cages_count% 统计所有战前玻璃笼的数量

跟玩家有关的变量:

%skywars_kills%, %skywars_deaths%, %skywars_accuracy%, %skywars_wins%, %skywars_modifier%, %skywars_projectiles_launched%, %skywars_projectiles_hit%, %skywars_player_exp%, %skywars_player_rank%, 
%skywars_blocks_placed%, %skywars_blocks_broken%, %skywars_arena%, %skywars_party_leader%, %skywars_selected_kit%, %skywars_selected_trail%, %skywars_selected_cage%
%skywars_teamcolor%, %skywars_coins%
结尾

参考资料

https://www.spigotmc.org/resources/%E2%99%9B-skywars-x-%E2%99%9B-solo-teams-kits-cages-trails-mystery-box-parties.28120/