[help] Gve
16 ответов200 просмотровСейчас просматривают: 1
· 07.06.2009, 15:02
Сборка: IL(c6), L2jDOT rev.546
Краткое изложение СУТИ проблемы: при включённом GvE движке при смерти и нажимание кнопки "в деревню" возраждение уходит в цикл и возраждает пока не перезайдёш
Вопрос: Как исправить?
Мои соображения по этому поводу: помоему ошибка гдето в этом коде но сам не особо разбираюсь поэтому поправить не могу...
CODE
public void doRevive()
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
} else
{
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
//_Status.setCurrentMp(getMaxMp() * Config.RESPAWN_RESTORE_MP);
// Start broadcast status
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
}
// Start broadcast status
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
else
setIsPendingRevive(true);
}
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
} else
{
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
//_Status.setCurrentMp(getMaxMp() * Config.RESPAWN_RESTORE_MP);
// Start broadcast status
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
}
// Start broadcast status
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
else
setIsPendingRevive(true);
}
0
· 07.06.2009, 15:25
Код
void doRevive()
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
}
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
}
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
else
setIsPendingRevive(true);
}
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
}
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
}
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
else
setIsPendingRevive(true);
}
Так попробуй
0
· 07.06.2009, 16:42
hakker: Увы если заменяю полностью то что выкладывал твоим кодом перестаёт компилить...
А ошибочки можно посмотреть ?
0
· 07.06.2009, 16:50
Код
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PcInstance.java:9568: doRevive(double) in com.l2dot.gameserver.model.L2Character cannot be applied to ()
[javac] super.doRevive();
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PcInstance.java:9565: method does not override or implement a method from a supertype
[javac] @Override
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PcInstance.java:9645: doRevive(double) in com.l2dot.gameserver.model.L2Character cannot be applied to ()
[javac] getPet().doRevive();
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PetInstance.java:541: doRevive(double) in com.l2dot.gameserver.model.L2Character cannot be applied to ()
[javac] super.doRevive();
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PetInstance.java:533: method does not override or implement a method from a supertype
[javac] @Override
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\handler\admincommandhandlers\AdminRes.java:182: cannot find symbol
[javac] symbol : method doRevive()
[javac] location: class com.l2dot.gameserver.model.L2Character
[javac] targetChar.doRevive();
[javac] ^
[javac] 6 errors
[javac] super.doRevive();
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PcInstance.java:9565: method does not override or implement a method from a supertype
[javac] @Override
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PcInstance.java:9645: doRevive(double) in com.l2dot.gameserver.model.L2Character cannot be applied to ()
[javac] getPet().doRevive();
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PetInstance.java:541: doRevive(double) in com.l2dot.gameserver.model.L2Character cannot be applied to ()
[javac] super.doRevive();
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\model\actor\instance\L2PetInstance.java:533: method does not override or implement a method from a supertype
[javac] @Override
[javac] ^
[javac] E:\workspace\L2Dot_IL_GameServer\java\com\l2dot\gameserver\handler\admincommandhandlers\AdminRes.java:182: cannot find symbol
[javac] symbol : method doRevive()
[javac] location: class com.l2dot.gameserver.model.L2Character
[javac] targetChar.doRevive();
[javac] ^
[javac] 6 errors
подставил в начале public он скомпилил но результат не изменился...
0
· 07.06.2009, 16:56
Вставь после
Код
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
}
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
}
эту строчку
broadcastPacket(new Revive(this));
и не забудь про то, что строчки некоторые перенесены - когда пастишь, не забудь про это
(я про if - ы )
0
· 07.06.2009, 17:18
hakker: Так там есть уже такая или ещё одну надо?
В том коде, который я тебе дал вставь эту строку, в том месте где я сказал.
Естественно там её нет.
После } вставь.
0
· 07.06.2009, 17:36
Цитата
Код
void doRevive()
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
}
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
}
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
else
setIsPendingRevive(true);
}
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
}
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
}
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
else
setIsPendingRevive(true);
}
В том коде который ты мне дал она есть!!!
0
· 07.06.2009, 18:53
[flood] у автора темы ник hakker а проблему решить не может... простите за флуд :) [/flood]
Администратор сервера DARKWORLD!
0
· 07.06.2009, 19:30
Код
public void doRevive()
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
}
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
}
else
setIsPendingRevive(true);
}
{
if (!isTeleporting())
{
setIsPendingRevive(false);
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isgood() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
}
if ((this instanceof L2PcInstance) && (((L2PcInstance) this).isevil() && Config.L2JMOD_GVE_ENABLE_FACTION))
{
teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
}
if (this instanceof L2PlayableInstance && ((L2PlayableInstance)this).isPhoenixBlessed())
{
((L2PlayableInstance)this).stopPhoenixBlessing(null);
}
_status.setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);
_status.setCurrentHp(getMaxHp() * Config.RESPAWN_RESTORE_HP);
broadcastPacket(new Revive(this));
if (getWorldRegion() != null)
getWorldRegion().onRevive(this);
}
else
setIsPendingRevive(true);
}
Походу так должно работать, заменяй весь метод этим
Если поможет, с тебя пасибка )
0
Тема закрыта для ответов


