# 版本 0.0.3.9.4 提前介绍c[最终版本对于0.0.4] 【注意：本解釋簡繁混寫，因爲趕時間，所以並不怎麽規範，請諒解】
## 简介
现在开始你可以用拴绳拴住玩家，也可以拴住自己了，不如尝试拴住彼此来通关我的世界吧（


你可以：
1. 拴绳可以拴住玩家
2. 在无任何拴住实体的情况下用拴绳对准栅栏可以拴住自己
3. 可以用指令来获取和调整玩家实体的拴绳的长度和设置拴绳数据实体
4. 目前有游戏规则来决定被栓玩家是否在传送时能随拴绳持有者一起传送
## 配置文件
1. 可改变指令前命名空间和关闭命名空间
2. 修改命令拴绳的可设置的长度范围
3. 设置拴绳在达到多少倍的拴绳长度后掉落
4. 拴绳箭最大存活时间

## 新物品 和 实体
### 拴绳箭 [有普通和荧光两种箭矢]
 获得飞一样的感觉（操作不当可能会摔死
+ 拴绳箭可以拴其它可拴LivingEntity了（
#### 射中实体时，会将射击者拴绳绑定在改实体上（该实体父类必须是有LivingEntity类型），同时拴绳箭会以普通的箭矢掉落
#### 射中栅栏时，会自动将玩家拴在上面 ，同时拴绳箭会以普通的箭矢掉落
#### 在地面上的箭可以通过按Shift靠近来捡起，如果捡起实体为发射箭矢玩家，则直接获取拴绳箭矢，如果捡起者为非发射者则成为发送者的拴绳持有者，并获得普通箭矢

## 新药水和效果
### 效果
* 禁拴 - 拥有此BUFF的LivingEntity将无法被拴住
### 药水
* 禁拴药水

## 指令 
可能会因为配置中差异性导致前缀'lp'变为其它或取消其存在，以模组配置文件为准
* `/lp leash length [<玩家>] set <长度> ` - 设置该玩家的拴绳长度 [ 如果<玩家>为空则代表执行对象是自己 ,<长度> 为在 5 ~ 1024之间的浮点数 ]

* `/lp leash length [<玩家>] [get]` - 顯示该玩家的拴绳长度 [ 如果<玩家>为空则代表执行对象是自己 , [get] 可不写] 

* `/lp leash data [<玩家>] set <實體>/<方塊坐標>` - 設置該玩家的的拴繩數據實體設置為<實體>/位於<方塊坐標>處的柵欄上的拴繩結實體

* `/lp leash data [<玩家>] [get]` - 顯示该玩家的拴绳數據 [ 如果<玩家>为空则代表执行对象是自己 , [get] 可不写]

* `/lp leash clear [<玩家[可多个对象]>] ` - 清除該玩家的的拴繩數據實體 [ 如果<玩家>为空则代表执行对象是自己 ]

* `/lp motion [<实体[可多个对象]>] add/set/multiply <x> <y> <z>` - 给实体添加/设置/倍乘 加速度

* `/lp tick ...` - 用法同原版Tick，但权限降为2，只用于调试，切勿滥用，后期考虑可能写成区域性的

## 游戏规则

* `LP.TeleportWithLeashedPlayers` - 此規則啓用后, 被栓玩家將會随玩家拴绳持有者一起传送 [默认值: True]

* `LP.CreateLeashFenceKnotEntityIfAbsent` - 此規則啓用后, 在設置 leashData 時，如果對應方塊坐標上的柵欄沒有拴繩結則會自動創建這個實體並綁定 [默认值: True]

* `LP.KeepLeashNotDropTime` - 此规则决定，当拴绳关系创建时一段时间里，即是距离已经达到了断裂距离，也保持其不断裂 [默认值: 240ticks ,可设置范围[80, 1200]ticks]

* `LP.DisableMoveCheck` - 此规则启用将会禁止服务器对玩家进行速度过快修正 [默认值: True]
