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

DragonTravel

来自Minecraft插件百科
跳转至: 导航搜索

插件介绍

DragonTravel让玩家有机会骑在龙上,这也给服务器添加了一种新的旅行方式.

插件特点

  • 允许管理员设置末影龙的目的地.
  • 允许拥有特定权限的玩家骑上末影龙并...
    • ...前往不同的航点
    • ...前往管理员已经设置好的航线.
    • ...前往指定的坐标.
    • ...飞到指定的玩家面前.
    • ...飞到你的派系之家 (需要Factions)
    • ...飞到你的城镇传送点 (需要Towny)
    • ...飞到你已经设置的家.
  • 允许管理员设置航线并限制末影龙数 (或指定半径内的末影龙).
  • 可以让玩家需要特定物品才能骑龙 (例如一个龙蛋)
  • 航线牌子.
  • 支持权限节点
  • 支持Vault!
  • 管理员可以设置不同的传送费用!
  • 管理员可以在配置内设置末影龙是否会破坏方块.
  • 所有的信息完全可自定义! 默认的messages.yml是英语,但是插件作者在wiki提供了一些其他语言版本的文件.
  • API允许其他插件通过 DragonTravel 来运送旅客. 查看 API页面 获得详情.

旅行 & 航线

  • 一趟旅行会把玩家带到目的地,只有一个目的地.
  • 而航线则是管理员设置的固定路线,可拥有多个站点.

Dragontravel1.jpg
Dragontravel2.jpg

安装

  1. 从BukkitDev下载最新版本的 DragonTravel
  2. 把JAR放到你的plugins文件夹内
  3. 可选: 配置 DragonTravel

指令

总指令

指令 描述
/dt dismount 下龙.
/dt sethome 设置你的末影龙的家.
/dt ptoggle 是否允许其他玩家使用飞龙骑脸.

旅行

指令 描述
/dt travel <站点名> 带你到指定的站点.
/dt ctravel <x> <y> <z> [世界名] 带你到指定位置.
/dt ptravel <playername> 带你到指定玩家面前.
/dt home 带你到你的末影龙家.
/dt fhome 带你到派系之家 (需要Factions)
/dt tspawn 带你到城镇之家 (需要Towny)
/dt showstats 列出可用站点.

航线

指令 描述
/dt flight <航线名> [player] 带你或指定的玩家登上航线.
/dt showflights 列出可用航线.
/dt showflight <航线名> 列出航线的航点.

管理员

权限 描述
/dt addstatdragon <name> [displayname] 在玩家的位置创建一条静止的龙 (并显示自定义名称)
/dt remstatdragon <name> 移除静止的龙 (可以是特定ID的龙)
/dt setstat <stationname> 在你当前位置设置新的站点.
/dt remstat <playername> 移除特定站点.
/dt remdragons 移除所有空龙 (除了有玩家骑乘和静止的龙)
/dt rembugdragon 移除无人骑乘的出错的末影龙. 移除距你距离最短的末影龙 (在10格方块内).
/dt createflight <flightname> 创建航线并把你置入创建航线模式
/dt setwp 设置新的航点 (只在创建航线模式中有用)
/dt remlastwp 移除最近设置的航点 (只在创建航线模式中有用).
/dt saveflight 保存当前编辑的航线并退出创建航线模式.
/dt remflight <flightname> 移除航线.

牌子

用法

牌子可以让你的玩家不输入指令就能骑龙. 通过牌子,你可以让玩家:

  • 骑乘启程前往目的地
  • 登上航线
  • 前往派系之家
  • 前往城镇之家

格式如下:

[DragonTravel]
<行为>
<目标>
[花费]

其中花费可选填,如果您启动了经济支付并且第四行为空,即便您通过物品使用付款,玩家仍会被收取默认费用,(例如,向一个玩家收取10金粒来登上航班,在第四行中填写“10.0”)

旅行牌

这种牌子将会带点击该牌子的玩家到指定的目的地. 以下例子将带玩家到 “MyExampleStat”站点并收取10元的费用. Dragontravel3.jpg Dragontravel4.jpg

航线牌

这种牌子将使点击该牌子的玩家登上指定的航线. 以下例子将带玩家到 “TestyFlight”站点并收取20元的费用. Dragontravel5.jpg Dragontravel6.jpg

派系牌

点击这个牌子的玩家将会被带到 “MyFaction” 这个派系,如果玩家不是这个派系的人则无法上龙. Dragontravel7.jpg Dragontravel8.jpg

常见问题

  • 问:可不可以移除末影龙的血条?
  • 答: 不能

详细解释:

At the moment this is not possible because the health-bar is rendered by the client and the server has no influence on that if we do not use third 
party APIs which we do not want to rely on. Should it ever be possible to remove the health-bar, we will remove it!

简译:
我没有这么先进的技术.


  • 问:能不能改变末影龙扇翅膀的频率?
  • 答: 不能

详细解释:

The problem about this is that the dragon’s wings are rendered client-side, so the plugin (which is only run on the server) does not have any chance 
to modify the speed of the wings. For some players, the wings a flapping too fast, for some players the wings a flapping in a perfect speed, but we 
cannot change this speed.

简译:
振翅频率由客户端决定,有的玩家看起来频率很高,有的就很正常


  • 问: 我能不能手动控制末影龙飞行?
  • 答: 不能

详细解释:

When this project started, there was the project RideThaDragon by V10lator which enabled you to do exactly that, so we decided that this does not fit 
into DragonTravel, because, like the name already says, Dragontravel is about “travels”, not free-riding. During the past months we thought about 
this topic again, because the project RideThaDragon has been abandoned by the author and we came to the point that we might implement this feature as 
soon as we have enough time.

简译:
请找其他插件


  • 问: 能不能让乘龙者坐得更低点?
  • 答: 不能

详细解释:

The dragon has a hitbox which is a bit bigger than the actual dragon. The player cannot sit “inside” this hitbox because the server doesn’t want a 
player to sit inside a monster (seems legit, right? ;) ), so we cannot move the player closer to the dragon. -.- Other players do not see the rider 
floating as far above the dragon as the rider sees himself. This difference is caused by the client-side rendering of the player models.

简译:
末影龙碰撞体积太大了,玩家不能撞到末影龙


  • 问:我不能上龙,出了什么问题?
  • 答:我怎么知道?把你的服务器日志发给我.

详细解释:

There are several possible reasons for this and I cannot give an exact answer to this question. The most common reasons are listed below:
1.One of the most common reasons for this is that users updated their server’s version of DragonTravel and the new version contains new options in the config.yml or the messages.yml. If DragonTravel then tries to start and recognizes that the existing config-/messages-file is outdated, it states that in the server-log and requires the admin to delete the old config (backup it before!) to create a new one at start-up. Afterwards, the admin can change the new config the way he likes to.
2.Of course there is also the possibility that there is an error which was caused by a corrupted database, configy.ml, messages.yml, a dumb admin or one of us developers. You normally see this directly when taking a look at the server.log. In this case, we can best help you if you simply paste your server.log at pastebin.com and create a ticket linking to it, telling us some important things about the moment the problem occured (What did you do? What did you expect to happen? What did actually happen? ...?). We will then try to help you as soon as possible.

简译:
使用最新版本的插件,检查你的配置有没有出错


权限节点

权限 描述
dt.home 向一个地方旅行并设置家
dt.sethome 只设置自己的家
dt.travelhome 只向自己的家旅行
dt.ctravel 旅行的坐标
dt.ptravel 向一个玩家飞去
dt.fhome 传送到派系的传送点 (需要Factions)
dt.tspawn 传送到城镇传送点 (需要Towny)
dt.travel.* 飞行到所有站点
dt.travel.<stationname> 飞行到某个站点
dt.flight.* 使用所有航线
dt.flight.<flightname> 登上某个航线
dt.admin.* 所有管理员指令
dt.admin.reload

重载插件

dt.admin.signs

所有可用管理员的牌子指令

dt.admin.stations

所有可用管理员的站点指令

dt.admin.flights

所有可用管理员的航线指令

dt.admin.statdragon

创建或移除静止的龙

dt.admin.remdragons

移除附近的空龙

dt.nocost.*

玩家不需要花费任何东西

dt.nocost.travel.*

玩家不需要花费旅费

dt.nocost.travel.command

玩家用指令旅行不需旅费

dt.nocost.travel.sign

玩家用牌子旅行不需旅费

dt.nocost.randomtravel.*

玩家前往随机地点不需旅费

dt.nocost.randomtravel.command

玩家用指令前往随机地点不需旅费

dt.nocost.randomtravel.sign

玩家用牌子前往随机地点不需旅费

dt.nocost.ptravel

玩家飞到其他玩家位置不需旅费

dt.nocost.ctravel

玩家飞到指定位置不需旅费

dt.nocost.fhome

玩家不需要花费就可以到派系之家

dt.nocost.flight.*

免费航线

dt.nocost.flight.command

指令航线免费

dt.nocost.flight.sign

牌子航线免费

dt.nocost.home.*

玩家不需要花费回家

dt.nocost.home.travel

玩家不需要花费回家

dt.nocost.home.set

玩家不需要花费设置家

dt.ptoggle

允许玩家开关其他玩家飞龙骑脸

dt.notrequireitem.*

玩家不需要 “特定物品” 来上龙

dt.notrequireitem.travel

玩家不需要 “特定物品” 来旅行

dt.notrequireitem.flight

玩家不需要 “特定物品” 来使用航线

dt.ignoreusestations.*

玩家不需在站点就可以使用任何指令

dt.ignoreusestations.travels

玩家不需在站点就可以旅行

dt.ignoreusestations.flights

玩家不需在站点就可以使用航线

dt.ignoredragonlimit

允许玩家骑龙,无视配置内的末影龙上限

dt.ignoreminheight

允许玩家骑龙,无视配置内的末影龙骑乘最低高度

dt.ignoredamagerestriction

允许玩家骑龙,无视配置内的冷却

配置

File:
    Version: 0.8
#把插件使用数据发送到mcstats.org
UseMetrics: true
#自动升级插件
UseAutoUpdater: false
    
################################
####### 总体设置 #######
################################

# <<< 末影龙方块破坏 >>>
AntiGriefDragons:
    bypassWorldGuardAntiSpawn: true
    ofDragonTravel: false
    all: true

# <<< 使用的消息文件 >>>
# Possible values are:
# 'en' - 英语
# 'de' - 德语
# 'fr' - 法语
# 'custom' - 自定义语言 "messages-custom.yml"
# 默认: 'en'
Language: 'en'
    
# <<< 飞行速度 >>>
# 这个数字代表了每tick飞过的方块数 20 ticks = 1 秒
# 不要设置大于 1.0 否则你的服务器会爆炸!
# 默认值: 0.5
DragonSpeed: 0.5

# <<< 最大龙数 >>>
# 如果服务器内龙太多的话
# 用这个来减缓你的服务器卡顿.
# 只限制本插件
# 生成的静止的龙!
# 默认值: -1 (关闭)
DragonLimit: -1

# <<< 玩家飞行最大距离 >>>
# 如果你的服务器很卡的话
# 可以改变这个数值来限制玩家飞行最大距离.
# 单位为方块.
# 默认值: -1 (无限制)
MaxTravelDistance: -1

# <<< 安全带 >>>
# 一些玩家喜欢跳伞
# 当玩家中途跳车时把玩家传送回起点.
# 如果设置为 true, 玩家将会被传送回起点.
# 如果设置为 false, 玩家将会被传送到地面.
# 默认值: true
TeleportToStartOnDismount: true

# <<< 玩家无敌 >>>
# 如果设置为 true, 玩家会穿墙时受伤
# 如果设置为 false, 玩家不会受伤.
# 默认值: false
VulnerableRiders: false

# <<< 龙之禁令 >>>
# 禁止玩家在骑龙时使用一下指令!
# 你必须加上 "/"前缀!
CommandPrevent:
- /spawn
- /f
- /kill
- /home
- /tp

# <<< 随机目的地 >>>
# 当玩家搭上这个名字的龙时 (默认: _random_)
# 龙会飞到范围内随机一个位置.
RandomDest:
    Name: '_random_'
    Limits:
        X-Axis:
            Min: -100
            Max: 100
        Z-Axis:
            Min: -100
            Max: 100
            
# <<< 站点限制 >>>
# 你可以限制每个站点的龙数 
# 默认:
#   EnableForTravels: false
#   EnableForFlights: false
#   Radius: 5
#   ExcludeSigns: false
MountingLimit:
    EnableForTravels: false
    EnableForFlights: false
    Radius: 5
    ExcludeSigns: false
            
################################
#######     付费设置     #######
################################

Payment:
    usePayment: false
    byResources: false
    byEconomy: false
    Economy:
        Prices:
            toStation: 5.0
            toRandom: 5.0
            toPlayer: 5.0
            toCoordinates: 5.0
            toHome: 5.0
            toFactionhome: 5.0
            toTownSpawn: 5.0
            setHome: 5.0
            Flight: 5.0
    Resources:
        ItemType: GOLD_INGOT
        ItemName: '<default>'
        Prices:
            toStation: 5
            toRandom: 5
            toPlayer: 5
            toCoordinates: 5
            toHome: 5
            toFactionhome: 5
            toTownSpawn: 5
            setHome: 5
            Flight: 5


            
################################            
#######     旅行设置     #######
################################

# <<< 飞行高度 >>>
# 默认值: 100
TravelHeight: 100

# <<< 玩家是否需要特定物品作为机票? >>>
# 选择所需的物品ID.
# 默认值: 122 (龙蛋)     
RequiredItem:
    Item: 122
    For:
        toStation: false
        toRandom: false
        toPlayer: false
        toCoordinates: false
        toFactionhome: false
        toTownSpawn: false
        toHome: false
        Flight: false
    
# <<< 限制指令 >>>
# 这会关闭玩家使用/dt travel的权限.
# 默认值: false
OnlySigns: false

# <<< 玩家默认设置 >>>
# 玩家是否默认可以被其他玩家飞龙骑脸
# 默认值: true
PToggleDefault: true

# <<< 是否在玩家按Shift时下车. >>>
# 如果设置为 'true', 玩家按Shift时下车.
# 如果设置为 'false', 玩家按Shift时不会下车.
# 默认值: false
DismountOnShift: false

# <<< 是否在玩家到达目的地时使其下龙. >>>
# 如果设置为 'true', 会到达目的地.
# 如果设置为 'false', 会到达目的地下面的方块.
# 默认值: false
DismountAtExactLocation: false

# <<< 最低高度 >>>
# 为了阻止玩家用末影龙挖矿, 你可以设置这个.
# 值域为Y值.
# 设置为 -1 关闭检测
# 默认值: -1
MinimumMountHeight: -1

# <<< 伤害冷却时间 >>>
# 为了防止受伤的玩家上龙, 你可以设置这个.
# 设置玩家受伤后多少秒才能骑龙.
# 设置为 -1 关闭检测
# 默认值: -1
DamageCooldown: -1

# <<< 场地限制 >>>
# 如果设置为true, 玩家必须在空旷的地方上下龙.
# 这只应用于旅行. 航线无视这个规则.
RequireSkyLight: false

# <<< 世界黑名单 >>>
# 玩家不能飞到黑名单里的世界.
# 如果玩家已经在这个世界里, 他仍然可以在这个世界内旅行
# 或飞到其他世界.
WorldBlacklistTravelTo:
- ExampleWorld1
- ExampleWorld2

# <<< 旅行起点世界黑名单 >>>
# 玩家不能在这些世界起飞.
WorldBlacklistTravelFrom:
- ExampleWorld3
- ExampleWorld4

信息

File:
  Version: 1.1
  Language: Chinese
Messages:
  General:
    Successful:
      AddedStatDragon: '&a成功创建静止龙&f{dragonname}&a.'
      RemovedStatDragon: '&a成功移除静止龙 &f{dragonname}&a.'
      DismountedHere: '&a你成功地下龙了.'
      DismountedToStart: '&a你取消了你的旅行并回到起点.'
      ToggledPTravelOn: '&a你现在允许玩家骑龙飞到你面前.'
      ToggledPTravelOff: '&a你现在不允许玩家骑龙飞到你面前.'
    Error:
      NoConsole: '&c控制台不能使用这个指令.'
      NameTaken: '&c这个名称重复了.'
      NoPermission: '&c你没有权限.'
      NotMounted: '&c你不在龙背上.'
      RequiredItemMissing: '&c你没有指定的物品来登龙.'
      RequireSkyLightPlayer: '&c你必须在空旷的地方才能登龙!'
      RequireSkyLightDestination: '&c在旅途中不能有障碍,否则龙不会着陆!'
      DatabaseCorrupted: '&c数据库已损坏, 无法加载. 请告知管理员.'
      ReachedDragonLimit: '&c已达到服务器末影龙限制, 你不能登龙了.请等待其他玩家下龙'
      BelowMinMountHeight: '&c你位于最低骑龙=高度之下.最低高度为 &f{minheight}&c.'
      DamageCooldown: '&c你必须等待 &f{seconds} &c秒才能骑龙.'
      WorldNotFound: '&c找不到这个世界.'
      WorldOnBlacklistTo: '&c目标世界位于黑名单中.'
      WorldOnBlacklistFrom: '&c当前世界位于黑名单中国.'
      StatDragonNotExists: '&c没有静止的龙 &f{name}&c.'
  Payment:
    Free: '&a免费!上来吧'
    Resources:
      Successful:
        WithdrawMessage: '&a花费 &f{amount}&a 物品.'
      Error:
        NotEnoughResources: '&c你没有足够的物品.'
    Economy:
      Successful:
        WithdrawMessage: '&a花费 &f{amount}&a 金币.'
      Error:
        NotEnoughMoney: '&c你没有足够的钱.'
  Signs:
    Successful:
      SignCreated: '&a成功创建牌子.'
    Error:
      SignCorrupted: '&c牌子已损坏.'
      NoTargetStationSpecified: '&c请指定旅行方式.'
      NoTargetFlightSpecified: '&c请指定一个航线.'
  Flights:
    Successful:
      StartingFlight: '&a登上航线 &f{flightname}&a.'
      NowInFlightCreationMode: '&a你现在处于创建航线模式. 使用 &f/dt setwp&a来设置航点,&f/dt saveflight&a来保存航线并退出该模式.'
      WaypointAdded: '&a成功添加一个航点.'
      WaypointRemoved: '&a成功移除上一个航点.'
      FlightSaved: '&a成功保存航线.'
      RemovedFlight: '&a成功移除航线.'
      SendingPlayer: '&a把旅客 &f{playername}&a 带上了航线 &f{flightname}&a.'
      SentPlayer: '&a你登上了航线 &f{flightname} &a.'
    Error:
      FlightDoesNotExist: '&c航线不存在.'
      FlightAlreadyExists: '&c航线已存在.'
      FlightIsInDifferentWorld: '&c航线不在同一世界.'
      AlreadyInFlightCreationMode: '&c你已经处于创建航线模式了.'
      NotInFlightCreationMode: '&c你不处于创建航线模式.'
      AtLeastOneWaypoint: '&c你必须创建至少一个航点.'
      CannotDestroyMarkerByHand: '&c你不能用手破坏标记. 用 &f/dt remlastwp.'
      CouldNotfindPlayerToSend: '&c找不到玩家 &f{playername}&c.'
      OnlySigns: '&c管理员关闭了这个指令, 你只能用牌子登上航线.'
  Travels:
    Successful:
      TravellingToRandomLocation: '&a前往随机地点.'
      TravellingToCoordinatesSameWorld: '&a前往坐标 &f{x}&a, &f{y}&a,
        &f{z}&a.'
      TravellingToCoordinatesOtherWorld: '&a前往坐标 &f{x}&a, &f{y}&a,
        &f{z}&a ,世界: &f{worldname}&a.'
      TravellingToHome: '&a前往你家.'
      TravellingToFactionHome: '&a前往派系之家.'
      TravellingToStation: '&a前往 &f{stationname}&a.'
      TravellingToPlayer: '&a前往 &f{playername}&a.'
      TravellingToTownSpawn: '&a前往城镇之家.'
      HomeSet: '&a设置家.'
      SendingPlayer: '&a发送旅客 &f{playername}&a 前往站点 &f{stationname}&a.'
      SentPlayer: '&a你正在前往站点 &f{stationname} .'
    Error:
      InvalidCoordinates: '&c无效的坐标.'
      PlayerNotOnline: '&c玩家 &f{playername}&a 不在线.'
      NoHomeSet: '&c你还没有设置家.'
      OnlySigns: '&c管理员关闭了这个指令, 你只能用牌子登上航线.'
      WorldNotFound: '&c找不到指定世界.'
      TargetPlayerDoesnotAllowPTravel: '&c玩家 &f{playername}&a 不允许其他玩家飞到他面前.'
      CannotTravelToYourself: '&c你不能飞到自己面前'
      MaxTravelDistanceExceeded: '&c目的地距离太远了.'
  Stations:
    Successful:
      StationCreated: '&a成功创建站点 &f{stationname}&a.'
      StationRemoved: '&a成功移除站点 &f{stationname}&a.'
    Error:
      StationAlreadyExists: '&c站点 &f{stationname}&a 已存在.'
      StationDoesNotExist: '&c站点 &f{stationname}&a 不存在.'
      NotCreateStationWithRandomstatName: '&c你不能创建名为 RandomDest 的站点.'
      NotAtAStation: '&c你必须要在一个站点才能骑龙.'
      CouldNotCreateStation: '&c无法创建站点.'
      CouldNotRemoveStation: '&c无法移除站点.'
  Factions:
    Error:
      FactionsNotInstalled: '&c服务器未安装派系.'
      NoFactionMember: '&c你不是派系的一份子.'
      FactionHasNoHome: '&c你的派系没有设置家.'
      NotYourFaction: '&c这不是你的派系.'
  Towny:
    Error:
      TownyNotInstalled: '&c服务器没有安装城镇.'
      NoTown: '&c你没有加入一个城镇.'

API

DragonTravel提供了一个可以被其他插件访问的API。目前,API仍然功能有限,但会随着时间的推移而完善. 目前的功能有:

  • 创建和移除静止的末影龙
  • 把玩家送上旅途

导入RyeDragonAPI:

import eu.phiwa.dragontravel.api.RyeDragonAPI;

用它来做一些东西:

Player player = ...; # Get player object
Location loc = ...; # Get location object

RyeDragonAPI api = RyeDragonAPI.getAPI();

# 把玩家送上旅途
try {
    api.sendOnTravel(player, loc);
} catch (DragonException e1) {
    // Handle problem
    e1.printStackTrace();
}

# 创建静止龙
try {
    api.makeStationaryDragon(loc, "statdragon", "Fancy Dragon Name", player.getUniqueId());
} catch (DragonException e2) {
    // Handle problem
    e2.printStackTrace();
}

# 移除静止龙
try {
    api.removeStationaryDragon("statdragon");
} catch (DragonException e3) {
    // Handle problem
    e3.printStackTrace();
}

更新记录

在此查看

协议

这个插件使用BSD协议.