• 因近日遭受攻击,百科现已限制新用户的编辑权限,一段时间后成为自动确认用户方可编辑。

Studio:插件代码集中营

From Minecraft插件百科
Jump to: navigation, search

In order to reach all the Reached party

前言

标题就是这货存在的意义

记不下的代码这里放

写明这货是干什么的

这里只容得下黑科技和麻烦码


快捷代码格:

<source lang="java"> </source>

精简代码区

产生粒子效果的几种方法

spawnParticle
spawnParticle(14种不同的用法):
  1. org.bukkit.Wolrd.spawnParticle(Particle particle, double x, double y, double z, int count)
  2. org.bukkit.Wolrd.spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ)
  3. org.bukkit.Wolrd.spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra)
  4. org.bukkit.Wolrd.spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, T data)
  5. org.bukkit.Wolrd.spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, T data, boolean force)
  6. org.bukkit.Wolrd.spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, T data)* 
  7. org.bukkit.Wolrd.spawnParticle(Particle particle, double x, double y, double z, int count, T data)
  8. org.bukkit.Wolrd.spawnParticle(Particle particle, Location location, int count)
  9. org.bukkit.Wolrd.spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ)
 10. org.bukkit.Wolrd.spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ, double extra)
 11. org.bukkit.Wolrd.spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ, double extra, T data)
 12. org.bukkit.Wolrd.spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ, double extra, T data, boolean force)
 13. org.bukkit.Wolrd.spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ, T data)
 14. org.bukkit.Wolrd.spawnParticle(Particle particle, Location location, int count, T data)

参数解释:

  • particle:要生成的粒子[粒子列表:待创建]
  • x, y, z:分别指生成粒子的x, y, z坐标
  • count:生成粒子的数量
  • offsetX:粒子在x轴方向上的最大偏移,就是说粒子生成时在x轴上被限制在哪个区域里[已验证, 但发现限制范围并非该数字,而似乎为该数字倍数,但尚未确定,不过该参数功能确实是限制粒子生成范围]
  • offsetY:与offsetX同理,但是是指y轴的限制[已验证, 但发现限制范围并非该数字,而似乎为该数字倍数,但尚未确定,不过该参数功能确实是限制粒子生成范围]
  • offsetZ:与offsetX同理,但是是指z轴的限制[已验证, 但发现限制范围并非该数字,而似乎为该数字倍数,但尚未确定,不过该参数功能确实是限制粒子生成范围]
  • extra:一些附加参数[待收集]
  • data:粒子的附加参数,有两种使用方法,一种是靠MaterialData,还有就是ItemStack

你可以在这里查看到MaterialData类的信息:https://bukkit.windit.net/javadoc/org/bukkit/material/MaterialData.html
你可以在这里查看到ItemStack类的信息:https://bukkit.windit.net/javadoc/org/bukkit/inventory/ItemStack.html
在data这个参数这填入一个MaterialData或是ItemStack类型的对象
示例:

getServer().getWorld("world").spawnParticle(Particle.FALLING_DUST, x, y, z, 1, 0, 0, 0, 0, new org.bukkit.material.MaterialData(Material.SAND));
在主世界的x, y, z处生成一个下落中的粉尘,且该粉尘材质是沙子

效果图: 下落中的粉尘(以沙子为材质)

  • force:是否强制玩家看到,玩家离粒子一定距离后就无法看到粒子了,但如果force设置为true则无视距离显示粒子
  • Location:表示生成粒子位置,这里你可以用new org.bukkit.Location(World world, double x, double y, double z)来构造一个Location对象,但注意Location还有另一个构造方法
PlayEffect
spawnParticle(4种不同的用法):
  1. org.bukkit.Wolrd.playEffect(Location location, Effect effect, int data)
  2. org.bukkit.Wolrd.playEffect(Location location, Effect effect, int data, int radius)
  3. org.bukkit.Wolrd.playEffect(Location location, Effect effect, T data)
  4. org.bukkit.Wolrd.playEffect(Location location, Effect effect, T data, int radius)

[参数解释暂无]

给实体药水效果

前提: 实体类(生物)

说明:

addPotionEffect(new PotionEffect(效果类型,持续时间,效果等级) );
效果类型: PotionEffectType.*   
持续时间&效果等级: int

实例:

Player p = (Player)sender;
p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED,80,2) );

备注: 无

生成自定义实体(之一)

前提: 实体类(Interface)

说明:

指定实体类 变量 = (指定实体类) *.getWorld().spawnEntity(位置, 实体类型);
位置: Location
指定实体类: org.bukkit.entity  包 / Interface Summary 接口
实体类型: EntityType.*

实例:

Player p = (Player)sender;
Location l = p.getLocation();
Sheep s = (Sheep) p.getWorld().spawnEntity(l, EntityType.SHEEP);

备注: 用于自定义实体属性,如不需则只用其值

*.getWorld().spawnEntity(位置, 实体类型)

字符串Builder

前提: 用到String的地方

说明:
(new StringBuilder("字符串")).append(对象).更多.toString()
对象: 一般为String
更多: 后可接更多的 append()

实例:

getLogger().info((new StringBuilder("[物品界面]")).append("插件").append("已启用").toString());

备注: 无

集成代码区