Есть вот такой вот код в предмете:
Нужен он, чтобы задерживать время между бросками, но на сервере же у нас переменная общая и действует на всех игроков, поэтому нужно как-то привязать переменную timer к определённому игроку, так вот, как это можно сделать? Вообще существуют ли какие-то методы привязки переменных?
Java:
public ItemStack onItemRightClick(ItemStack p1, World p2, EntityPlayer p3)
{
Date date = new Date();
if(timer <= (int) date.getTime() && (!p2.isRemote)) {
if (!p3.capabilities.isCreativeMode)
{
--p1.stackSize;
}
p2.playSoundAtEntity(p3, "random.bow", 0.5F, 0.4F / (itemRand.nextFloat() * 0.4F + 0.8F));
if (!p2.isRemote)
{
EntityDStick = new EntityDStick(p2, p3);
p2.spawnEntityInWorld(new EntityDStick(p2, p3));
}
timer = (int) date.getTime() + 9000;
} else if (timer-(int) date.getTime() > 0) {
double time2 = (timer-(int) date.getTime())/1000.00;
p3.addChatMessage(new ChatComponentTranslation("tile.timer.current", time2));
}
return p1;
}
Нужен он, чтобы задерживать время между бросками, но на сервере же у нас переменная общая и действует на всех игроков, поэтому нужно как-то привязать переменную timer к определённому игроку, так вот, как это можно сделать? Вообще существуют ли какие-то методы привязки переменных?