사이트 로그인
2016.12.03 11:31
/* 현재 십리건곤을 만드는중에 있습니다.
이게 지금 테스트를 안해봐서 된다,안된다는 저도 잘 몰라요
그냥 설명하기 위해서 만들다가 이렇게 올립니다.(CR강의실인데 RB기준으로 작성했습니다.)
어차피 뭐 스크립트의 전반적인 이해도를 높이는 거니깐요...
그럼 시작할게요! */
magic 십리건곤
{
set @id,myid(); // set @id~set @sd 부터는
set @sd,mysd(); // 나의 id값과 나의 session값을 @(임시변수 - 스크립트에서만 사용되고 소멸됨)id,sd로 저장한다는 의미
callfunc "PKMAP_CHECK";
callfunc "MAGIC_CHECK";
callfunc "MP_CHECK";
callfunc "HP_CHECK"; // callfunc는 자주 사용하는것을 자신만의 함수로 만들어서 쓰이는건데 다시 설명할게요
set_mp @sd, get_mp(@sd) - 1500;
set_hp @sd, get_hp(@sd) - 20000; // 자신의 현재마력 - 1500 , 자신의 현재체력 - 20000을 마법을 사용하면 체력,마력으로 set!
if( @CHECK == 0 || @MAP == 2 ) // callfunc에서 return값을 받아온 것입니다. 이것의 설명은 다음 강의로..
{
message @sd, 3, "마법을 사용할 수 없습니다..."; // 대략적인 것은 @CHECK가 0 ''이거나"" @MAP 이 2이면 이 메세지가 뜹니다.
end; // "이거나" -> 둘 중 하나라도 만족한다면입니다.
}
else
{
if( @MAP == 1)
{
for( set @i, 0; @i <= 1; set @i, @i + 1) // for문은 먼저 @i = 0으로 시작해서 @i <= 1 조건식이 참이라면
// 밑의 { } 까지 읽고 와서 @i + 1이 되어 1이 증가 이렇게 @i 가 2가되면 조건식 거짓
// 따라서 for문은 종료됩니다.
{
callfunc "SIDE_CHECK",@i; //위의 callfunc와 조금 다르죠? @i는 바로 인자값을 SIDE_CHECK라는 자신이 만든 함수에 쓴다는의미
callfunc "SIDE_MOBCHECK",@i;
set @id,myid();
set @sd,mysd();
if( @target > 0) // @target과 밑의 @target1 은 callfunc에서 반환된 값인데, 이 값이 0보다 크면~
{
effect @target, 1, 0; // effect를 @target한테 1번의 이미지를 보여준다.( damage 앞에 넣으세요)
// 이유는 damage가 들어가서 " style="text-decoration:none;color:rgb(0,0,0);">체력이 다 되서 @target이 사라지면 effect가 나올 target이 사라짐
damage @id,@target,1,0; // @id(나) @target한테 1의 데미지를 준다 ( 끝의 0은 금강불체 뚫냐 안뚫냐 의미)
sound @id,1; // 소리
action @id,1,6,30; // 마법쓸때 @id가 액션취하는거
}
// 이제 밑에는 왠만한건 다 비슷하고 여러 조건문은 다음 callfunc할때 자세히 하겠지만
// PKMAP체크와 target이 몹인지 사람인지 등등 확인하는것입니다.
if( @target1 > 0)
{
damage @id,@target,1,0;
effect @target, 1, 0;
sound @id,1;
action @id,1,6,30;
}
}
}
else if( @MAP == 0 )
{
for( set @i, 0; @i <= 1; set @i, @i + 1)
{
callfunc "SIDE_CHECK",@i;
callfunc "SIDE_MOBCHECK",@i;
set @id,myid();
set @sd,mysd();
if( @target > 0)
{
damage @id,@target,1,0;
effect @target, 1, 0;
sound @id,1;
action @id,1,6,30;
}
if( @target1 > 0)
{
effect @target, 1, 0;
sound @id,1;
action @id,1,6,30;
}
}
}
message @sd, 3,"십리건곤을 외웠습니다.";
}
}
// 저보다 SCRIPT 잘 짜는분들 많고 하지만
// 아직 아무것도 모르시는 분들은 참고용으로 보시면 될 거 같습니다.
// 허접한 강의는 이만...다음시간에..