24-10-2009, 05:56 PM
|
#1 (permalink)
|
|
Membro - General
Registrado em: Nov 2008
Localização: São Paulo
Posts: 201
Agradecido 398 Vezes em 81 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
|
Critical/Magical HIT com SOM!
Esse código faz um som, quando um Fighter ou Mage der um critical.
Citação:
================================================== ===================
Index: net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
================================================== ===================
public final void sendDamageMessage(L2Character target, int damage, boolean mcrit, boolean pcrit, boolean miss)
{
+ L2PcInstance player = (L2PcInstance)activeChar;
// Check if hit is missed
if (miss)
{
sendPacket(new SystemMessage(SystemMessageId.MISSED_TARGET));
return;
}
// check if hit is critical
if (pcrit)
+ {
sendPacket(new SystemMessage(SystemMessageId.CRITICAL_HIT));
+ PlaySound CRITICAL_HIT_SOUND = new PlaySound(1, "CRITICAL_HIT_SOUND", 0, 0, 0, 0, 0);
+ player.sendPacket(CRITICAL_HIT_SOUND);
+ player.broadcastPacket(CRITICAL_HIT_SOUND); //Can hear and those around you
+ }
if (mcrit)
+ {
sendPacket(new SystemMessage(SystemMessageId.CRITICAL_HIT_MAGIC)) ;
+ PlaySound MAGICAL_HIT_SOUND = new PlaySound(1, "MAGICAL_HIT_SOUND", 0, 0, 0, 0, 0);
+ player.sendPacket(MAGICAL_HIT_SOUND);
+ player.broadcastPacket(MAGICAL_HIT_SOUND); //Can hear and those around you
+ }
SystemMessage sm = new SystemMessage(SystemMessageId.YOU_DID_S1_DMG);
sm.addNumber(damage);
sendPacket(sm);
}
|
Para evitar de ouvir dois sons em um critical normal (PCrit) (como você também tem o padrão de som do lado do cliente acerto crítico), você poderia editar ALAudio.int, que está dentro de sua pasta system, com L2FileEdit. Lá você pode encontra isto:
[EtcSound]
CriticalSound=SkillSound.Critical_Hit_02
CriticalSound_Vol=250.0
CriticalSound_Radius=50.0
E você pode definir CriticalSound_Vol = 0,0 ou algo assim, então você não ouve dois sons ao mesmo tempo, se você quiser.
Créditos: xAddytzu
|
|
|