프리징 블리자드 적용소스.txt
case 80: // 프리징 블리자드
int 전체1 = (int)(Math.random() * skills.getPower()) + (int)(Math.random() * (cha.get_int() + cha.get_Sp()) ) + 10 ;
if(loc==0)loc = 8;
for(int i=0 ; i<cha.getKnownObjects().size() ; i++){
try{
L1Character target = (L1Character)cha.getKnownObjects().get(i);
if(target instanceof L1MonsterInstance){ // 몬스터라면
L1MonsterInstance mon = (L1MonsterInstance)target;
if(!mon.is_isdead()){
if(!distance(cha, mon, loc)){ // 범위 안에 있다면
int 확률 = (int)(Math.random() * 100) +1 ;
if( 확률 < 15){
if(!mon.get_mon_아이스()){
L1TempObjectInstance tempobj;
TempObject template11;
template11 = new TempObject();
template11.setGfxid(176);
template11.set_map(mon.get_map());
template11.set_x(mon.get_x());
template11.set_y(mon.get_y());
template11.setTempObject(skills.getSkill_id());
tempobj = new L1TempObjectInstance();
tempobj.set_temp(template11);
tempobj.set_x(template11.get_x());
tempobj.set_y(template11.get_y());
tempobj.set_map(template11.get_map());
while(true){
tempobj.set_objectId(IdFactory.getInstance().getNextId());
if(L1World.getInstance().storeObject(tempobj)){
WorldMapPoint.getInstance().set_map(tempobj.get_x(),tempobj.get_y(),tempobj.get_map(),tempobj.get_objectId());
break;
}
}
cha.sendPackets(cha.get_netConnection().bph().get_Magic().S_TempObjectPack(tempobj), true, true);
mon.AllsendPackets(mon.bph().get_Magic().S_DarkEffect(cha, mon.get_objectId(), true, 1), true);
mon.set_mon_아이스(true);
mon.set_무적mon(true);
아이스mon fzmon = new 아이스mon(cha, mon, tempobj, skills.getBuffDuration());
fzmon.start();
mon.set_currentHp(mon.get_currentHp() - 전체1);
}else{
mon.set_mon_Temp아이스(true);//얼리는부분.
}
}else{
// -- 몬스터 전투관련 인공지능 시작
mon.AddFightPlayer(cha);
mon.AddExpList(cha);
mon.FightStart(cha, false);
cha.AddFightList(mon);
target.set_Dmg(32);
list.add(target);
}
}
}
}
}catch (Exception e){}
}
L1Character[] 리스트1 = (L1Character[]) list.toArray(new L1Character[list.size()]);
cha.sendPackets(cha.get_netConnection().bph().get_AttackPacket().S_MagicAttackPacket3(cha, 리스트1, skills.getCastGfx()), true, true); // 마법쓰는액션
for(int i=0 ; i<list.size() ; i++){
try{
L1Character temp = (L1Character)list.get(i);
arrset = Possible(cha.get_x(),cha.get_y(), temp.get_x(), temp.get_y(), cha.get_map()); // 장매물이 잇나검색 <==추가
if(arrset >= 1){ // 장애물이있다면
temp.set_currentHp( temp.get_currentHp() - 0 );
}else if(temp.get_Dmg() == 32){
temp.set_currentHp( temp.get_currentHp() - 전체1 );
}
}catch (Exception e){}
}
break;
[출처] (비공개 카페)

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