336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
타이머를 사용하다보면, 반복 타이머를 필연적으로 사용하게된다.
이때 내부적으로 얼마나 반복되었는지 체크를 하기위해서 전역변수를 만들어서 관리를 하게되는데
아래의 방법은 로컬변수로 체크가 가능한 방법이다.
public void Skill8(int Client)
{
int count = 7;
Skill8_1(Client, count);
}
public void Skill8_1(int Client, count)
{
count --;
if(count <= 0)
return;
//PrintToChatAll("%d", count);
DataPack pack = new DataPack();
pack.WriteCell(Client);
pack.WriteCell(count);
pack.WriteString("Skill8_1");
CreateTimer(0.1, Skill_Callback, pack);
}
public Action Skill_Callback(Handle Timer, DataPack pack)
{
pack.Reset();
int Client = pack.ReadCell();
int count = pack.ReadCell();
char func[32];
pack.ReadString(func, 32);
Call_StartFunction(INVALID_HANDLE, GetFunctionByName(INVALID_HANDLE, func))
Call_PushCell(Client);
Call_PushCell(count);
Call_Finish();
return Plugin_Continue;
}
'소스모드 > TIP' 카테고리의 다른 글
[TIP] 벡터 다루기 (0) | 2023.04.03 |
---|---|
[TIP] 메소드맵 StringMap 예제 (0) | 2023.04.03 |
[TIP] 신문법 훅 이벤트 변경점 (0) | 2023.03.16 |
[TIP] 소스모드 개발시 참고하면 좋은 사이트 (0) | 2021.12.17 |
[TIP] 플러그인 디컴파일 후 참고해야 할 사항 (0) | 2021.04.02 |