Skip to content

Instantly share code, notes, and snippets.

@entrypointkr
Last active November 25, 2016 20:07
Show Gist options
  • Save entrypointkr/8cbc7569f4b57946a424b0c53b9af07a to your computer and use it in GitHub Desktop.
Save entrypointkr/8cbc7569f4b57946a424b0c53b9af07a to your computer and use it in GitHub Desktop.
/* aliases.msa (파일) */
*:/opchat = >>>
/*
# @isOpChat 변수에 닉네임.opchat 라는 전역변수의 값을 넣습니다.
# 커맨드헬퍼는 'test' 'abc' 를 할 경우 test 와 abc 사이의 공백과 무관하게
# 두 값을 띄워주는데, (마침표) . 를 사이에 넣을 경우 값을 붙여줍니다.
# 예: msg('test' 'abc') test abc
# 예: msg('test''abc') test abc
# 예: msg('test'.'abc') testabc
# 예: msg('test' . 'abc') testabc
# 또 @isOpChat 과 같은 변수, import() 와 같은 함수, (마침표) . 같은 특수 문자의 경우
# ' ' 로 감쌀 경우 문자열로 인식하며 제 기능을 하지 않습니다.
# null 이나 false, true, 숫자는 ' ' 로 감쌀 경우 String (문자열) 로 인식합니다.
*/
if (pisop(player()) {
@isOpChat = import(player().'.opchat')
if(@isOpChat == null) {
@isOpChat = true
export(player().'.opchat', @isOpChat)
}
msg('Opchat' @isOpChat);
} else {
msg('권한이 없습니다.')
}
<<<
# main.ms (파일)
bind(async_player_chat, null, null, @e) {
/*
# bind 는 이벤트를 사용할 수 있는 함수입니다.
# 사용법: bind(이벤트명, null, null, @e) { 코드 }
# @e 는 이벤트 정보가 배열로 담기는 변수입니다.
# array_remove_values 는 해당 배열의 값을 지워줍니다.
# array 는 배열을 만듭니다.
# 예:
# @array = array('a', 'b', 'c')
# array_remove_values(@array, 'b')
# @array 의 값 = {a, c}
# modify_event 는 이벤트의 정보를 수정합니다.
# 사용법 : modify_event(이벤트key, 수정할값)
*/
@player = @e['player']
@recipients = @e['recipients']
@isOpChat = import(@player.'.opchat')
foreach(@recipient in @recipients) {
array_remove_values(@recipients, @recipient)
}
modify_event('recipients', @recipients)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment