PDR 스크립트 고수님들 몹 스크립트 질문드려봅니다 ㅠㅠ

작성일 25-04-05 23:07 | 14,327 | 5

본문

몬스터 공격 스크립트를 만들고 싶은데 

아래대로 짜게 되면 

범위 내에 존재하는 모든 플레이어를 다 공격하더군요 

그리고 유령상태에서도 계속 공격을 합니다..

단일 대상 공격으로 바꾸려면 어떻게 수정해야 될까요?! 거기에 죽은상태일때는 공격안하게 하려면 어떻게 짜야할까요 ㅠㅠ

알려주시면 대단히 감사드리겠습니다ㅠ_ㅠ

onmove:

set @id, myid();

set @target, get_mobtarget(@id);

set @r, rand(1,100);

if(@r <= 80)

{

.@xr = 6;

.@yr = 6;

.@x1 = get_x(@id) - .@xr;

.@x2 = get_x(@id) + .@xr;

.@y1 = get_y(@id) - .@yr;

.@y2 = get_y(@id) + .@yr;

.@node = get_objnextnode(0);

while(.@node)

{

.@node_chk = 0;

.@target_id = node2id(.@node);

//set_idsegment(.@target_id);

if(.@target_id > 0 && .@target_id != @id)

{

.@node = get_objnextnode(.@node);

.@node_chk = 1;


if(.@x1 <= get_x(.@target_id) && get_x(.@target_id) <= .@x2 && .@y1 <= get_y(.@target_id) && get_y(.@target_id) <= .@y2)

{

if(istype(.@target_id) == 1)

{

action @id, 1, 30, 0;

sound .@target_id, 726;

set .@target_sd, id2sd(.@target_id);

if(get_state(.@target_sd) == 1) { continue; }

damage 2, @id, .@target_id, rand(42000,50000),0;

message .@target_sd, 3, "공격을 가합니다.";

}

}

}

if(.@node_chk == 0)

.@node = get_objnextnode(.@node);

}

}

0 0

댓글목록 5

mob 몬스터다! {
oninit:
// 몬스터 생성시 실행
end;

onmove:
// 움직일때마다 실행
end;

onattack:
// 몬스터 공격시 실행 (근접 공격)
end;

onsay:
// 누군가 말할시 실행
// @userid : 유저 옵젝번호
// @last_say$ : 말한 값
end;

onclick:
// 누군가 클릭할시 실행
// @userid : 유저 옵젝번호
end;

ondamaged:
// 공격당할시 실행
// @attackerid : 유저 공격한 옵젝번호
end;

ondead:
// 죽을시 실행
end;
}
답글
혹시 하나만 더 질문드려도 될까요?
DR에서는
변신함수로
set_looktype @id, 13, 1; 이런걸 넣을때 db 엔피시 스폰  위에서부터 순번대로 엔피시 이미지 변신이 됐었는데
PDR에선 저걸 넣으니 오류가 생기네요 어떤식으로 몬스터 변신 스크립트를 짜야 될까요?
  • 주간 조회수
  • 주간 베스트
게시물이 없습니다.
게시물이 없습니다.
Copyright © 바람인사이드 - 바람의나라 클래식 PC게임 팬 커뮤니티. & 4th All Rights Reserved.

Login icons created by Freepik - Flaticon