모든몹과 NPC가 말하는 소스입니다
package l1j.server.server.model;
public class NpcAiSay
{
public NpcAiSay()
{
}
public void Say(L1PcInstance l1pcinstance, L1NpcInstance l1npcinstance, int i)//유저가 npc 공격했을경우
{
try
{
switch(i)
{
case 60801: // 판도라
BPH.getInstance().NpcChatPacket(l1npcinstance, "쳤냐?~", 12, 0);
break;
case 60009: // 도린
BPH.getInstance().NpcChatPacket(l1npcinstance, "그만해라~ 많이 묵었다 아이가!", 12, 0);
break;
//이런식으로 npc ID 추가
default:
BPH.getInstance().NpcChatPacket(l1npcinstance, "으엌!", 12, 0);
break;
}
}
catch(Exception exception) { }
}
public void Say2(L1PcInstance l1pcinstance, L1MonsterInstance l1monserinstance, int i)//몬스터가 처음 공격시
{
try
{
switch(i)
{
case 1: // '01'
case 45357: //데스나이트
BPH.getInstance().NpcChatPacket(l1monserinstance, "대화부분.", 12, 0);
break;
case 45348: //베레스
BPH.getInstance().NpcChatPacket(l1monserinstance, "대화부분!!", 12, 0);
break;
case 45344: //바포메트
BPH.getInstance().NpcChatPacket(l1monserinstance, "대화부분!!", 12, 0);
break;
case 45336: //흑장로
BPH.getInstance().NpcChatPacket(l1monserinstance, "용의 안식을 방해하는 자에게 죽음의 안식을..", 12, 0);
break;
case 45098: // 스파토이
BPH.getInstance().NpcChatPacket(l1monserinstance, "살아있는 자에게 죽음을!", 12, 0);
break;
//이런식으로 몬스터 ID추가
default:
// BPH.getInstance().NpcChatPacket(l1monserinstance, "읔...", 12, 0);
break;
}
}
catch(Exception exception) { }
}
public void Mondie_Say(L1PcInstance l1pcinstance, L1MonsterInstance l1monserinstance, int i)//몹 죽었을경우
{
try
{
switch(i)
{
case 45357: //데스나이트
BPH.getInstance().NpcChatPacket(l1monserinstance, "사악한 힘에 의해 언데드화 하여 다시 데스나이트로 부활 하리라....", 12, 0);
break;
case 45348: //베레스
BPH.getInstance().NpcChatPacket(l1monserinstance, "대화부분", 12, 0);
break;
case 45344: //바포메트
BPH.getInstance().NpcChatPacket(l1monserinstance, "대화부분", 12, 0);
break;
//이런식으로 몬스터 ID추가
default:
// BPH.getInstance().NpcChatPacket(l1monserinstance, "읔...", 12, 0);
break;
}
}
catch(Exception exception) { }
}
public void Mondie2_Say(L1PcInstance l1pcinstance, L1MonsterInstance l1monserinstance, int i)//테이밍 성공했을경우
{
try
{
switch(i)
{
case 45344: //바포메트
BPH.getInstance().NpcChatPacket(l1monserinstance, "대화부분", 12, 0);
break;
default:
BPH.getInstance().NpcChatPacket(l1monserinstance, "사랑해요~~", 12, 0);
break;
}
}
catch(Exception exception) { }
}
public static final int ACF5ACA9 = 1;
}
----------------------------------------------------------------------------------------------------------------
L1MonsterInstance.java 내용
class FightMonster extends Thread
{
public void run()
{
////몬스터 채팅부분
nas = new NpcAiSay();
int monID = getNpcTemplate().get_npcId();
nas.Say2(player, mon, monID);
///////
try
{
if(Escape)
-----------------------------------------
class DieMonster extends Thread
{
public void run()
{
try
{
CalcExp.getInstance().EXP(mon, player); //경험치획득
CalcDrops.getInstance().Drop(mon); //아이템, 아데나 드랍
player.sendPackets(BPH.getInstance().S_OwnCharStatus(player));
WorldMapPoint.getInstance().set_map(mon.get_x(), mon.get_y(), mon.get_map(), mon.get_wmp());
///////몬스터 채팅부분
nas = new NpcAiSay();
int monID = getNpcTemplate().get_npcId();
nas.Mondie_Say(player, mon, monID);
////////
---------------------------------------------------
public void DieMonster2(L1MonsterInstance mon, L1PcInstance l1pcinstance2)//테이밍성공 했을경우
{
////몬스터 채팅부분
nas = new NpcAiSay();
int monID = getNpcTemplate().get_npcId();
nas.Mondie2_Say(l1pcinstance2, mon, monID);
///////
_FightPlayer.clear();
Fight = false;
--------------------------------------------------------
private NpcAiSay nas;//몬스터 채팅 부분
밑줄에 추가
-----------------------------------------------------------
L1NpcInstance.java 내용중
public void onAction(L1PcInstance l1pcinstance)
{
///// npc 채팅부분
int npcID = _npcTemplate.get_npcId();
getNAS();
getNAS().Say(l1pcinstance, this, npcID);
////////////////////////
if(20 != l1pcinstance.get_currentWeapon())
-----------------------------------------------------------------------
출처 몰름

준희미니 님의 최근 댓글
rt 2021 05.25 ㄳ 2021 05.11 ㄳ 2021 05.11 rt 2021 05.09 rt 2021 04.25