CR 문파 만들기 소스
script 문파대리인 {
P0:
set @mysd, mysd();
set @choose, list1("무엇을 하시겠습니까?(※주의 문주는 주의하세요 @가입 기능 쓰지마세요 쓸경우 경고-2)", "문파 만들기", "문파장 이임", "문파원 가입", "적대문파", "적대문파 확인");
switch (@choose) {
case 1: // 문파 만들기
if (get_clan(@mysd)) {
dialog 0, 0, 1, "이미 가입된 문파가 있습니다.";
end;
}
set @pos, dialog(1, 0, 1, "흐음.. 문파를 창설하고자 왔는가?\n\n그렇다면 잘 찾아왔네.\n\n허나, 한 문파의 수장이 되려면 5가지 비패 모아서 나에게 줘야 하네");
if(@pos == 0) end;
set @pos, dialog(1, 1, 1, "노랑비패[문파],보라비패[문파]\n연두비패[문파],초록비패[문파],파랑비패[문파]\n\n이렇게 5가지 비패들이 필요하다네");
if(@pos == 0) end;
set @pos, list2(@list2, 1, 1, "이 비패들을 모아 왔는가?\n\n비패들이 없다면 문파를 만들어 줄 수가 없다네", "예, 모든 비패를 구해왔습니다.", "아니오, 아직 구하지 못했습니다.");
if(@list2 == 1){
for (;;) {
if(pc_amountitem(@mysd, name2itemid("노랑비패[문파]")) < 1) {
dialog 0,0,0, "노랑비패[문파]가 부족한거 같다네..";
end;
}
if(pc_amountitem(@mysd, name2itemid("보라비패[문파]")) < 1) {
dialog 0,0,0, "보라비패[문파]가 부족한거 같다네..";
end;
}
if(pc_amountitem(@mysd, name2itemid("연두비패[문파]")) < 1) {
dialog 0,0,0, "연두비패[문파]가 부족한거 같다네..";
end;
}
if(pc_amountitem(@mysd, name2itemid("초록비패[문파]")) < 1) {
dialog 0,0,0, "초록비패[문파]가 부족한거 같다네..";
end;
}
if(pc_amountitem(@mysd, name2itemid("파랑비패[문파]")) < 1) {
dialog 0,0,0, "파랑비패[문파]가 부족한거 같다네..";
end;
}
set @pos, input2(@input$, 0, 8, "문파명을 입력하세요. 문파명은 최대 8자까지 입력 가능합니다." , "문파명은", "입니다.");
if (! @pos) end;
if (-1 == @pos) goto P0;
if ("" == @input$) {
set @pos, dialog(0, 1, 1, "문파명을 입력하지 않으셨습니다.");
if (! @pos) end;
}
else
break;
}
// FIXME: 문파 이름 구해오는 함수가 생길 때 까지, 계정변수에 문파명을 저장해놓고 쓴다.
set $clanname$, @input$;
makeclan @input$, get_name(@mysd), 1;
delitem @mysd, name2itemid("노랑비패[문파]"), 1; { message @mysd, 3, "노랑비패[문파]를 주었습니다."; }
delitem @mysd, name2itemid("보라비패[문파]"), 1; { message @mysd, 3, "노랑비패[문파]를 주었습니다."; }
delitem @mysd, name2itemid("연두비패[문파]"), 1; { message @mysd, 3, "노랑비패[문파]를 주었습니다."; }
delitem @mysd, name2itemid("초록비패[문파]"), 1; { message @mysd, 3, "노랑비패[문파]를 주었습니다."; }
delitem @mysd, name2itemid("파랑비패[문파]"), 1; { message @mysd, 3, "노랑비패[문파]를 주었습니다."; }
additem @mysd, name2itemid("문파관리비령"), 1;
set @pos, dialog(0, 0, 1, @input$ + "문파가 생성되었습니다.");
broadcast 0, 11, " ※ " + get_name(@mysd) + "님이 " + @input$ + "문파를 창설하였습니다. 축하해주세요!!", 0;
if (! @pos) end;
}
if(@list2 == 2){
dialog 0, 0, 1, "그렇다면 할 수 없지\n다음에 구해서 오게..";
end;
}
goto P0;
case 2: // 문파장 이임
set @clan_id, get_clan(@mysd);
if (! @clan_id) {
dialog 0, 0, 1, "가입된 문파가 없습니다.";
end;
}
if (get_name(@mysd) != get_clanmaster(@clan_id)) {
dialog 0, 1, 1, "문파장만이 가능합니다.";
end;
}
for (;;) {
P1: set @pos, input2(@input$, 0, 6, "문파장으로 이임 할 사람을 입력하세요.", "문주로 이임할 사람은", "입니다.");
if (! @pos) end;
if (-1 == @pos) goto P0;
if ("" == @input$) {
set @pos, dialog(0, 1, 1, "문파장으로 이임 할 사람을 입력하지 않으셨습니다.");
if (! @pos) end;
}
else
break;
}
set @pos, list2(@choose, 0, 1, @input$ + "님이 맞습니까?", "예", "아니오");
if (-1 == @pos || 2 == @choose) goto P1;
if (! @pos) end;
set_clanmaster @clan_id, @input$;
dialog 0, 0, 1, "문파장이 " + @input$ + "님께 이임 되었습니다.";
break;
case 3: // 문파원 가입
set @clan_id, get_clan(@mysd);
if (! @clan_id) {
dialog 0, 0, 1, "가입된 문파가 없습니다.";
end;
}
if (get_name(@mysd) != get_clanmaster(@clan_id)) {
dialog 0, 1, 1, "문파장만이 가능합니다.";
end;
}
for (;;) {
P2: set @pos, input2(@input$, 0, 6, "가입시킬 분의 이름을 입력하세요.", "가입시킬 분의 이름은", "입니다.");
if (! @pos) end;
if (-1 == @pos) goto P0;
if (@input$ == get_name(@mysd)) {
set @pos, dialog(0, 1, 1, "자기 자신을 문파에 가입시킬 수 없습니다.");
if (! @pos) end;
}
else if ("" == @input$) {
set @pos, dialog(0, 1, 1, "가입시킬 분의 이름을 입력하지 않으셨습니다.");
if (! @pos) end;
}
else {
set @yousd, name2sd(@input$);
if (! @yousd) {
set @pos, dialog(0, 1, 1, @input$ + "님을 찾을 수 없습니다.");
if (! @pos) end;
continue;
}
if (get_clan(@yousd))
set @pos, dialog(0, 1, 1, @input$ + "님은 이미 문파에 가입되어 있습니다.");
else if (get_mapid(mysd()) != get_mapid(@yousd))
set @pos, dialog(0, 1, 1, "대상이 같은 맵에 없습니다.");
else
break;
if (-1 == @pos) goto P2;
end;
}
}
set @pos, list2(@choose, 0, 1, @input$ + "님이 맞습니까?", "예", "아니오");
if (-1 == @pos || 2 == @choose) goto P2;
if (! @pos) end;
set #clansd, @mysd;
set #clanname$, $clanname$;
magiccast @yousd, 7000;
//dialog 0, 0, 1, @input$ + "님이 동의하시면 가입이 완료됩니다.";
break;
case 4: // 적대 문파
set @clan_id, get_clan(@mysd);
if (! @clan_id) {
dialog 0, 0, 1, "가입된 문파가 없습니다.";
end;
}
if (get_name(@mysd) != get_clanmaster(@clan_id)) {
dialog 0, 1, 1, "문파장만이 가능합니다.";
end;
}
P3: set @pos, dialog(0, 0, 1, "신중하게 선택해 주십시오. 한번 선택한 적대 문파를 취소할려면 운영자께 문의하여야 합니다.");
if (! @pos) end;
P4: set @pos, dialog(0, 1, 1, "적대 문파를 선택하게 될 시 어느 장소에서나 상대 문파의 문파원을 제거할 수 있습니다.");
if (! @pos) end;
if (-1 == @pos) goto P3;
for (;;) {
set @pos, input2(@input$, 1, 6, "적대 문파의 문주의 이름을 적으세요.", "적대 문파로 설정할 문주의 이름은", "입니다.");
if (! @pos) end;
if (-1 == @pos) goto P4;
if ("" == @input$) {
set @pos, list2(@choose, 0, 1, "적대 문파를 없애시겠습니까?", "예", "아니오");
if (-1 == @pos || 2 == @choose) continue;
if (! @pos) end;
set_clanvicemaster @clan_id, "(null)";
dialog 0, 0, 1, "적대 문파가 없어졌습니다.";
}
else {
set @pos, list2(@choose, 0, 1, @input$ + "님이 맞습니까?", "예", "아니오");
if (-1 == @pos || 2 == @choose) continue;
if (! @pos) end;
set_clanvicemaster @clan_id, @input$;
dialog 0, 0, 1, @input$ + "님의 문파가 적대문파로 설정되었습니다.";
}
break;
}
break;
case 5: // 적대 문파 확인
set @clan_id, get_clan(@mysd);
if (! @clan_id) {
dialog 0, 0, 1, "가입된 문파가 없습니다.";
end;
}
if (get_name(@mysd) != get_clanmaster(@clan_id)) {
dialog 0, 1, 1, "문파장만이 가능합니다.";
end;
}
set @vicemaster$, get_clanvicemaster(@clan_id);
if ("(null)" == @vicemaster$) {
dialog 0, 1, 1, "적대문파로 설정된 문파가 없습니다!";
end;
}
dialog 0, 0, 1, "당신 문파의 적대문파의 문주는 " + @vicemaster$ + " 입니다.";
break;
}
}
magic 문파원동의문a {
magic_aether mysd(), 7000, 1;
}
magic 문파원동의문 {
set @mastersd, #clansd;
set @clanname$, #clanname$;
set @mysd, mysd();
// 문주가 로그아웃 한 경우, 서버폭파 방지
// if (! istype(@mastersd))
// end;
set @pos, dialog(0, 0, 1, @clanname$ + "문파에서 당신을 초대하려고 합니다.");
if (! @pos) end;
set @choose, list1("가입하고자 하는 문파의 문파장의 이름이 " + get_name(@mastersd) + "(이)가 맞습니까?", "네, 맞습니다.", "아니오, 틀립니다.");
switch (@choose) {
case 1:
set @pos, dialog(0, 0, 1, "한번 가입한 문파를 탈퇴할 때는 그에 합당한 금전을 지불해야 합니다. 다시 한번 신중히 생각하시고 결정하시기 바랍니다.");
if (! @pos) end;
set @choose, list1(get_name(@mastersd) + "님의 " + @clanname$ +"문파에 가입하시겠습니까?", "네, 가입하겠습니다.", "아니오, 가입하지 않겠습니다.");
switch (@choose) {
case 1:
// FIXME: 문파 이름 구해오는 함수가 생길 때 까지, 계정변수에 문파명을 저장해놓고 쓴다.
set $clanname$, @clanname$;
set_clan @mysd, @clanname$;
message @mastersd, 0x03, get_name(@mysd) + "님이 문파에 가입하셨습니다.";
dialog 0, 0, 1, "성공적으로 문파에 가입되셨습니다!!";
break;
case 2:
dialog 0, 0, 1, "가입처리가 취소되었습니다.";
break;
}
break;
case 2:
dialog 0, 0, 1, "문주의 말:\n죄송합니다. 잘못 보냈습니다.";
break;
}
}
item 32층지령서 {
set @myid, myid();
set @mysd, mysd();
image 0, 204, 0;
set @list1, list2(@ret, 1, 1, "저의 누추한 처소에 오신것을 환영합니다. 어떤 용건으로 오셨는지요?", "문파 관련에 대해서 묻고 싶어 왔습니다.");
if(@ret == 0) end;
if(@ret == 1) {
set @list1, list2(@ret, 1, 1, "문파의 어떤 기능을 원하셔서 오셨습니까?", "문파 제작", "문파 관리");
if(@ret == 0) end;
if(@ret == 1) {
if(get_clan(@mysd) >= 0) {
dialog 1,0,0, "문파를 이미 가지고 계시군요.\n문파를 가지고 계시면 생성할 수 없습니다.";
end;
}
if(get_level(@mysd) >= 99 && get_joblevel(@mysd) >= 3) {
if(get_money(@mysd) < 10000000) {
dialog 0, 0, 1, "문파 제작을 원하십니까?\n\n문파제작은 제작하려면 일정 비용이 필요합니다.\n필요한 문파자금은 1000만전입니다.";
end;
} else {
set @list1, list2(@ret, 1, 1, "어떻게... 금전도 가지고 게시는데, 문파 제작을 하실겁니까?", "문파제작을 시작하겠습니다.", "나중에 하겠습니다.");
if(@ret == 1) {
dialog(1, 0, 1, "문주가 되기전에 알아두셔야할게있습니다\n적문파로 악용시 제재된다는점 알아주세요.\n문파창설비는 1000만전입니다.");
// dialog(1, 0, 1, "일단 문파비패들을 가져가겠습니다. 명심하세요.\n문파 도중에 서버가 끊기거나, 월드팅이 일어나면 종료하지 마시고 스크린샷을 첨부하여 운영진에게 말하면 복구해드립니다.\n\n또한 앞으로의 종료는 아이템만 날릴 수 있으니 주의해주세요.");
dialog(1, 0, 1, "일단 1000만전을 가져가겠습니다. 명심하세요.\n문파 도중에 서버가 끊기거나, 월드팅이 일어나면 종료하지 마시고 스크린샷을 첨부하여 운영진에게 말하면 복구해드립니다.\n\n또한 앞으로의 종료는 아이템만 날릴 수 있으니 주의해주세요.");
set_money @mysd, get_money(@mysd) - 10000000;
dialog(1, 0, 0, "네. 금전은 잘 받았습니다.\n참고로 명심하셔야 할것은, 문파를 제작한 사람이 문파장입니다.");
input1 @clan$, "앞으로 "+get_name(@mysd)+"님과 함께 할 문파명을 정해주세요.";
dialog(1, 0, 0, "잠시만 기다려주세요. 약 3초의 시간이 소요됩니다.");
sleep 3000;
makeclan @clan$, get_name(@mysd), 0;
broadcast 0, 4, "◈" + get_name(@mysd) +"님이 " +@clan$+" 문파를 제작하셨습니다.", 0;
dialog(1, 0, 0, "[ "+@clan$+" ] 문파가 제작되었습니다. 축하합니다.\n\n앞으로 좋은 문파 제작 되기를 기원합니다.");
end;
}
if(@ret == 2) {
// dialog(1, 0, 0, "그렇군요.. 그럼 다음에 마음이 바뀌시면 다시 오세요.\n\n제 기억력은 부족해서, 아마 문파비패를 모두 가지고 오시지 않으시면 잊어버리고 다시 말씀드릴 수 있습니다.\n양해 부탁 드립니다.");
dialog(1, 0, 0, "그렇군요.. 그럼 다음에 마음이 바뀌시면 다시 오세요.\n\n제 기억력은 부족해서, 아마 만전을 가지고 오시지 않으시면 잊어버리고 다시 말씀드릴 수 있습니다.\n양해 부탁 드립니다.");
end;
}
}
} else {
dialog(1, 0, 0, "문파제작은 3차 승급 이상자만 가능합니다."); end;
}
} // 문파 제작
if(@ret == 2) {
if(get_clan(@mysd) == 0) {
dialog(1, 0, 0, "당신은 문파에 가입되어 있지 않습니다.");
end;
}
if(@save_clanmaster$ == @save_clan$) {
set @list1, list2(@ret, 1, 1, "안녕하세요? 문파장님. 어떤 일로 오셨나요?", "문파원 가입", "문파원 축출", "부문주 위임", "부문주 해임", "문파 폐쇄");
if(@ret == 0) end;
if(@ret == 1) {
input1 @user_name$, "어떤 회원을 "+ get_clan(@mysd) + "문파로 초대하시겠습니까?";
if(@user_name$ == get_name(@mysd)) {
dialog(1, 0, 0, "올바른 아이디가 아닙니다.");
end;
}
set @name_id, name2id(@user_name$);
set @name_sd, id2sd(@name_id);
if(@name_sd > 0){
if(get_clan(@name_sd) > 0){
dialog(1, 0, 0, "초대한 아이디는 이미 문파가 가입되어 있거나, 가입할 수 없는 상태입니다.");
end;
}
}
if(istype(@name_id) == 1){
set #clan_id, @mysd;
magiccast @name_sd, 4070;
dialog(1, 0, 0, "잠시만 기달려주세요.");
} else {
dialog(0, 0, 0, "초대한 아이디는 현재 접속중이지 않거나, 잘못되었습니다.");
end;
}
}
if(@ret == 2) {
input1 @user_name$, "어떤 회원을 "+ get_clan(@mysd) + "문파에서 축출하시겠습니까?";
set @target_id, name2id(@user_name$);
set @target_sd, id2sd(@target_id);
if(@target_sd == 0) {
dialog 0,0,0, "접속 중인 문원만 축출 가능합니다.";
end;
}
if(get_clanmaster(get_clan(@mysd)) == get_name(@target_sd)){
dialog(0, 0, 0, "문주를 탈퇴시킬 수 없습니다.");
end;
}
if(get_clanvicemaster(get_clan(@mysd)) == get_name(@target_sd)){
dialog(0, 0, 0, "부문주를 탈퇴시킬 수 없습니다.");
end;
} else {
if(get_clan(@mysd) == get_clan(@target_sd)) {
set_clan @target_sd, 0;
dialog(0, 0, 0, @user_name$ +"님이 문파에서 탈퇴당하셨습니다.");
end;
} else {
dialog(0, 0, 0, @user_name$ +"님은 문파원이 아닙니다.");
end;
}
}
}
if(@ret == 3) {
if($clanvicemaster == 1) {
dialog(1, 0, 0, "이미 부문주를 설정 한 상태입니다.");
end;
} else {
input1 @user_name$, "어떤 회원을 부문주로 설정하시겠습니까?";
set @target_id, name2id(@user_name$);
set @target_sd, id2sd(@target_id);
if(@target_sd > 0){
if(get_clan(@target_sd) == 0){
dialog(1, 0, 0, "초대한 아이디는 문파에 가입되어 있지 않은 회원입니다.");
end;
}
}
if(istype(@target_id) == 1){
if(get_clanmaster(get_clan(@mysd)) == get_name(@target_sd)){
dialog(1, 0, 0, "잠시만 기달려주세요.");
}
set_clanvicemaster get_clan(@mysd), get_name(@target_sd);
set $clanvicemaster, 1;
dialog(1, 0, 0, "부문주가 설정되었습니다.\n부문주는 한명만 설정 할 수 있습니다.");
end;
} else {
dialog(1, 0, 0, "초대한 아이디는 현재 접속중이지 않거나, 잘못되었습니다.");
end;
}
}
}
if(@ret == 4) {
set @list1, list2(@ret, 1, 1, "현재 지정되어 있는 부문주를 해임하시겠습니까?", "예, 해임합니다.", "해임하지 않습니다.");
if(@ret == 1) {
set_clanvicemaster get_clan(@mysd), "";
set $clanvicemaster, 0;
dialog(1, 0, 0, "문파 해임이 완료되었습니다.");
end;
}
if(@ret == 2) {
dialog(1, 0, 0, "해임하지 않습니다.");
end;
}
}
if(@ret == 5) {
dialog(1, 0, 0, "문파를 폐쇄하는데에는 조건이 필요하지요. 100만전을 구해오세요!");
if(get_money(@mysd) < 1000000) {
dialog 0, 0, 1, "아쉽게 회원님께서는 100만전이 갖춰져 있지 않는군요.";
end;
}
else {
set_money @mysd, get_money(@mysd) - 1000000;
dialog(1, 0, 0, "음.. 회원님께서는 100만전을 가지고 계시군요!\n일단 가져가겠습니다. 절대 종료하지 마세요!");
set_clan @mysd, 0;
set @mysd, mysd();
delitem @mysd, name2itemid("문파관리비령"), 1;
set_clanvicemaster get_clan(@mysd), "";
dialog(1, 0, 0, "문파를 폐쇄했습니다!\n 만약 남아있는 문파원이 있다고 해도 문파주인, 부문파주인이 없으므로, 끝입니다.");
}
}
}
}
if(@save_clanvicemaster$ == @save_clan$){
set @list1, list2(@ret, 1, 1, "안녕하세요? 부문파장님. 어떤 일로 오셨나요?", "문파원 가입", "문파원 축출");
if(@ret == 0) end;
if(@ret == 1) {
input1 @user_name$, "어떤 회원을 "+ get_clan(@mysd) + "문파로 초대하시겠습니까?";
if(@user_name$ == get_name(@mysd)) {
dialog(1, 0, 0, "올바른 아이디가 아닙니다.");
end;
}
set @name_id, name2id(@user_name$);
set @name_sd, id2sd(@name_id);
if(@name_sd > 0){
if(get_clan(@name_sd) > 0) {
dialog(1, 0, 0, "초대한 아이디는 이미 문파가 가입되어 있거나, 가입할 수 없는 상태입니다.");
end;
}
}
if(istype(@name_id) == 1){
set #clan_id, @mysd;
magiccast @name_sd, 4070;
dialog(1, 0, 0, "잠시만 기달려주세요.");
}
else {
dialog(0, 0, 0, "초대한 아이디는 현재 접속중이지 않거나, 잘못되었습니다.");
end;
}
}
if(@ret == 2) {
input1 @user_name$, "어떤 회원을 "+ get_clan(@mysd) + "문파에서 축출하시겠습니까?";
set @target_id, name2id(@user_name$);
set @target_sd, id2sd(@target_id);
if(@target_sd == 0) {
dialog 0,0,0, "접속 중인 문원만 축출 가능합니다.";
end;
}
if(get_clanmaster(get_clan(@mysd)) == get_name(@target_sd)) {
dialog(0, 0, 0, "문주를 탈퇴시킬 수 없습니다.");
end;
}
if(get_clanvicemaster(get_clan(@mysd)) == get_name(@target_sd)) {
dialog(0, 0, 0, "부문주를 탈퇴시킬 수 없습니다.");
end;
} else {
if(get_clan(@mysd) == get_clan(@target_sd)) {
set_clan @target_sd, 0;
dialog(0, 0, 0, @user_name$ +"님이 문파에서 탈퇴당하셨습니다.");
end;
} else {
dialog(0, 0, 0, @user_name$ +"님은 문파원이 아닙니다.");
end;
}
}
} else {
set @list1, list2(@ret, 1, 1, "안녕하세요? 문파원님. 어떤 일로 오셨나요?", "문파 탈퇴");
if(@ret == 0) end;
if(@ret == 1) {
set @list1, list2(@ret, 1, 1, "정말로 탈퇴하시겠습니까?", "예. 문파에서 나가겠습니다.", "아니오, 문파에서 나가지 않겠습니다.");
if(@ret == 1) {
set_clan @mysd, 0;
dialog(0, 0, 0, "문파에서 탈퇴 하셨습니다.");
end;
}
if(@ret == 2) {
dialog(0, 0, 0, "문파에서 탈퇴 하지 않으셨습니다.");
end;
}
}
}
}
}
}
magic 활력 {
set @mysd, mysd();
set $clan_id, #clan_id;
if(#ansvkdnjs < 100000) {
callfunc "클랜가입", $clan_id;
} else {
goto Q;
}
Q:
dialog(0, 0, 0, "문파원제한수를 초과했습니다");
end;
}

솔직이 님의 최근 댓글
공개하신 팩 덕분에 공부 많이하고있어요. 2023 02.17 ㄳ 2023 02.15 우리들이 엔피씨 스크립트를 만들때, 가장 기본적으로 사용하는 함수는 두개가 있습니다. list - 메뉴창 함수 dialog - 대화창 함수 그리고 함수를 이용할때 사용하는 임시변수( @ )가 있습니다. 가장 중요한것은, 함수가 어떤 용도로 사용되며, 함수 기능을 사용할시 어떤 조건이 생성이 되는지, 알야아 합니다. 우선 예를든 스크립트를 만들어보도록 하겠습니다. set @menu, list1("어떤 버튼을 누르실껀가요?","버튼1","버튼2"); if(@menu == 1) { 이벤트 영역 1 } else if(@menu == 2) { 이벤트 영역 2 } 우리는 우선, 임시저장소를 '선언'또는 만들었습니다. 어떤 임시저장소를 만들었냐구요? 바로 ' m '이라는 임시 저장소를 만들었습니다. 우리가 list1("어떤 버튼을 누르실껀가요?","버튼1","버튼2"); 에서 버튼 1을 누르면, @m 이라는 임시변수/저장소는 1의 숫자를 갖게 됩니다. 그러므로 우리가 버튼1을 누르면 if(@menu == 1) { 이벤트 영역 1 } 이 이벤트 영역 1을 사용할 수 있는것입니다. 버튼 2를 누르면 else if(@menu == 2) { 이벤트 영역 2 } 이벤트 영역 2를 사용할 수 있게되는거죠, 그냥 간단하고 쉽게 이해하세요. set @menu, list1("어떤 버튼을 누르실껀가요?","버튼1","버튼2"); < < 버튼 1을 누른것은 set @menu, 1; < < 1과 같다. set @menu, list1("어떤 버튼을 누르실껀가요?","버튼1","버튼2"); < < 버튼 2를 누른것은 set @menu, 2; < < 2와 같다. list1은 '작은 기본 메뉴창'을 불러오는 함수이며, 게임에서는 엔피씨를 눌럿을때 볼 수 있는 메뉴창을 말합니다. 그냥 메뉴창에서 버튼을 누르면, 간단하게 선언한 변수에 버튼의 누름에 따라 선언되어있는 변수에 숫자가 들어간다, 안들어간다 라고 생각할 수 있습니다. 가장 간단하게 이해를 하는 방법중에 하나는, 위에서 언급한것이고 두번째로는 금전에 빗대어 이해를할 수 있습니다. set @money, 10000; if(@money < 10000) { 이벤트 영역 1 } else if(@money > 10000) { 이벤트 영역 2 } else { 이벤트 영역 3 } 위에서는 아주 간단한 if 문이 설정 되어있습니다. 맨위에는 set @money, 10000; 이라는 임시변수 선언문이 나와있습니다. 인즉 @money 라는곳에, 10000이라는 조건이 들어가 있는것입니다. 그럼 이것을 실제로 스크립트에 적용시켜서, 우리가 엔피씨를 눌럿을때 어떤 영역을 우리가 사용가능할까요? set @money, 10000; if(@money < 10000) { 이벤트 영역 1 } else if(@money > 10000) { 이벤트 영역 2 } else { 이벤트 영역 3 } 정답은 이벤트 영역 3입니다. 첫번째 if문에서는, @money 라는 임시변수가 10000보다 적을때를 나타내고 있으며, 두번째 else if 문에서는, @money 라는 임시변수가 10000보다 높을때를 나타내고 있습니다. 그러니 아무런곳에도 포함되지않기때문에, 이벤트 영역3 에 들어갈 수 있는것입니다. 어렵지 않아요. 천천히 이해를 해보도록 하세요. 2022 08.11 고맙읍니다 2022 08.10 선생님께서 올려주신 통파일덕분에 공부 많이하고 있습니다 고마움을 어떻게 표현해야할지 모르겠습니다. 2022 07.03