중간에 나가는거 변수설정해도 0명으로 처리가 안되네요 어떻게 설정해야 할까요?
variables
{
global:
8: job_1
player:
3: job
}
rule(“test필요”)
{
event
{
Player Left Match;
Team 1;
All;
}
condition
{
Event Player.job == Custom String("알바생");
}
action
{
Global.job_1 = 0;
}
}
만약 job_1이 특정하지 않는 한 유저에게만 할당된다면
variables
{
global:
8: job_1
}
rule(“test필요”)
{
event
{
Ongoing - Global;
}
condition
{
"job_1의 1번째 인덱스 값을 플레이어 슬롯으로 생각하며 해당 슬롯의 플레이어가 없을때 (나갔을 때의 판정을 대신)"
Players In Slot(Global.job_1[1], Team 1) == Null;
"job_1의 0번째 인덱스 값을 플레이어 변수 job으로써 생각함 (플레이어가 나가는 순간 해당 플레이어의 변수또한 사라져서 플레이어 변수로 하는 것은 의미없음)"
Global.job_1[0] == Custom String("알바생");
}
action
{
Global.job_1 = 0;
}
}
으로 확인할수 있습니다. 이유는 안에 써있음, 하지만 만약 job_1이 0번째 슬롯 (1번 플레이어)의 전용 글로벌 변수라면
variables
{
global:
8: job_1
}
rule(“test필요”)
{
event
{
Ongoing - Global;
}
condition
{
"0번 슬롯의 플레이어가 없을때 (나갔을 때의 판정을 대신)"
Players In Slot(0, Team 1) == Null;
"(플레이어가 나가는 순간 해당 플레이어의 변수또한 사라져서 플레이어 변수로 하는 것은 의미없음)"
Global.job_1 == Custom String("알바생");
}
action
{
Global.job_1 = 0;
}
}
이렇게 하는 것도 방법입니다.
다만 전자의 경우, global.job_1을 배열 형식으로 0번 인덱스에 직업 스트링, 1번 인덱스에 해당 번호를 입력해야 되며 만약 그것도 아닌 모든 플레이어가 global.job_1을 사용한다면 2단 배열을 따로 사용하여야 합니다.