WOW UI 모드-제 2 장 Slash 명령
Buy WoW Gold 저렴한
- Buy WoW 골드 클래식에서 안전 PVPBank 를 사용하여 쿠폰
SEAN
. 지불:페이팔,신용. - 뮬팩토리에서 와우 골드 페이팔을 구매하세요. 와우 클래식 쿠폰:
wowcgold
&와우 골드 쿠폰:wowrgold
. 최고 가격,즉시 배달. 지불:페이팔,스 크릴,비트 코인.
- 사용자 인터페이스 가이드-제 1 장
- 사용자 인터페이스 가이드-제 2 장
- 사용자 인터페이스 가이드-제 3 장
- 사용자 인터페이스 가이드-제 4 장
- 사용자 인터페이스 가이드-제 5 장
- 사용자 인터페이스 가이드-제 6 장
- 7
2 부 색인
- 슬래시 명령이란 무엇이며 왜 내가 신경 쓰는가
- 슬래시 명령은 어떻게 작동 하는가
- 루아 파일
- 모두 합치기
- 최종 단어
2 부에 오신 것을 환영합니다.와우 만들기 가이드 애드온! 이 할부에서 우리는 우리가 1 부에서 만든 간단한 애드온을 구축 할 수 있습니다. 당신이 애드온을 만드는 이미 잘 알고 다시,당신은 신속하게 부분 하나를 탈지 할 수 있습니다.
2 부에서는 루아,엑스,목차 파일의 기본 사항에 대해 잘 알고 있다고 가정합니다. 그러나,나는 당신이 광범위한 프로그래밍 경험을 가지고 있다고 가정합니다. 우리의 초점은 슬래시 명령을 처리하는 것입니다. 길을 따라,우리는 또한 루아 코딩에 조금 더 가까이 볼 것이다. 우리가 할 때,우리는 루아 코드를 수정하지 않고도 최종 사용자가 사용자 정의 할 수 있도록 1 부에서 다소 절름발이 전투 외침 애드온을 확장했습니다. 1 부에서 애드온을 이미 가지고 있다면<여기에서>파일을 얻을 수 있습니다.
슬래시 명령이란 무엇이며,왜 내가 신경 쓰는가
당신이 약 5 분 이상 와우를 연주했다면,슬래시 명령에 익숙해졌습니다. 그들은 와우를 재생하는 동안 입력 한 것과 같은 것들을 다시/와우를 재생하는 동안 입력 한 것과 같은 것들을 다시/와우를 재생하는 동안 입력 한 것과 같은 것들을 다시/와우를 재생하는 동안 입력 한 것과 같은 것들을 다시. 슬래시 명령은 마우스를 사용하지 않고 작업을 수행하는 매우 편리한 방법입니다. 애드온 작성자의 경우 슬래시 명령은 창 및 단추가 있는 그래픽 사용자 인터페이스보다 구현하기가 훨씬 간단합니다. 요구 사항이 간단하면 슬래시 명령이 애드온에 필요한 모든 것일 수 있습니다.
아시다시피,와우는 이러한 명령에 대해 제공합니다. 당신이 알지 못할 수도있는 것은 애드온이 자신의 슬래시 명령을 추가 할 수 있다는 것입니다. 따라서 슬래시 명령 카운트를 수많은-엄청난-및-하나에 부딪 치기 위해 무엇이 필요한지 살펴 보겠습니다.
슬래시 명령 작동 방법
애드온이 생성하는 모든 슬래시 명령에는 루아 함수가 연결되어 있습니다. 사용자가 슬래시 명령을 입력하면 와우는 루아 함수를 호출합니다. 이 테이블은 모든 다른 슬래시 명령을 호출해야하는 함수에 매핑하는 테이블입니다. 당신은 전화 번호부처럼이 생각할 수 있습니다. (대화방 및 메신저 전에 다시 기억,사람들이 전화를 사용하는 경우 제이)슬래시 명령은 이름과 같으며 기능은 전화 번호와 같습니다. 사용자가 슬래시 명령을 입력하면 올바른 명령을 찾을 때까지 슬래시 명령(이름)을 실행합니다. 그런 다음 해당 항목에 대한 함수(전화 번호)를 호출합니다. 여기서 슬래시 명령을 생성하는 루아는 다음과 같습니다.
슬래시 목록=슬래시 2 세트 배틀클래스;
이 줄은 슬래시 명령을 다음과 같이 설정합니다.
이 줄은 슬래시 명령을 다음과 같이 설정합니다.
예를 들어,슬래시 목록 테이블에 슬래시 명령이 이미 존재하면 자동으로 생성됩니다. (편리,그것은이다 2)이 실제로 작동하기 위해,우리는 디 정의해야 2)우리의 루아 코드의 어딘가에 함수. 이 함수는 다음과 같이 보일 수 있습니다:
함수
–나중에 사용하기 위해 전투 외침을 설정
끝
(규칙에 대한 단어:슬래시 명령 이름에 모두 대문자를 사용했습니다. 그것은 우리가 쓴 TTH_AOG2_SET_MY_BATTLE_CRY¡±대신¡°TthAog2SetMyBattleCry¡±. 이 가이드에서 우리는 모든 대문자를 상수 다 값 세상이 성간 먼지 나 눈보라 사제 또는 똑같이 끔찍한 것으로 부서 지더라도 결코 변하지 않아야합니다. 내가 올캡 이름을 사용하는 것을 볼 때마다,당신은 내가 당신에게 상수를 보여주는 것을 알 것입니다.)
팝 퀴즈:새로운 슬래시 명령을 실행하기 위해 사용자 유형은 무엇입니까? 그것은 트릭 질문입니다. 위의 루아 라인은 슬래시 명령을 생성하고 루아 함수를 루아 함수와 연관 시키지만,우리는 여전히 그것을 실행할 수있는 방법이 없습니다. 와우는 멋진 앨리어싱 시스템을 사용하여 사용자가 입력 한 내용을 실제 슬래시 명령과 연결합니다. 이제 사용자가 사타구니에 있는 것이 아닌 다른 유형의 경우,이 코드를 입력해야 합니다.¡±,슬래쉬 명령¡°TTH_AOG2_SET_MY_BATTLE_CRY¡±실행됩 일으키는 기능¡°TthAog2SetMyBattleCry¡±될 것이라는 매개 변수¡°지 않는 사타구니에!¡±. (우리는¡°2¡±의 끝에서¡°/setmybattlecry2¡±기 때문에 우리는¡ll 개정을 우리는 애드온에서 나중에 이용 안내 and we don¡t want 이름을 충돌이 있습니다.2)
왜 추가 단계 왜 슬래시 명령을 만드는 이유는 무엇입니까? 당신은 이미 첫 번째를 볼 수 있습니다:우리의 내부 이름은 우리의 코드에서 많은 의미를 만들 수 있지만,그들은 사용자에게 보여 종종 정말 못생긴 다시. 두 번째 이유는 더 중요하다: 이 추가 단계는 여러 키워드가 동일한 슬래시 명령을 실행할 수 있습니다. 이 문제를 해결하려면 다음 단계를 수행해야합니다. 이제 우리의 애드온 사용자는 전투 외침을 설정하기 위해 다음 중 하나를 입력 할 수 있습니다.
이제 애드온의 사용자는 전투 외침을 설정하기 위해 다음 중 하나를 입력 할 수 있습니다.
지에서 일정 부분(SLASH_TTH_AOG2_SET_MY_BATTLE_CRY2)우리는 우리가 추가되는¡°2¡±대신¡°1¡±이 시간입니다. 우리는 세 번째 키워드를 추가 할 수 있습니다.
슬래시 명령은 창이나 버튼처럼 화려하거나 시각적으로 매력적이지만,사용자에게 종종 편리한 명령입니다. 그리고 그들은 당신이 쉽게 만들 수 있도록 훨씬 쉽게 다시. (당신은 여전히 당신의 애드온에 그래픽 인터페이스를 원하는,당신은 아마 할 경우,인내심. 우리는 이 가이드의 7 부에서 그 내용을 다룰 것입니다.)
루아 변수
위의 함수에서 새로운 것을 발견했을 수 있습니다. 당신이 그것을 놓친 경우에 대비하여 다시 여기 있습니다:
기능:
-나중에 사용하기 위해 전투 외침을 설정하십시오.
:
:
:
:
:
:
:
:
:
:
:
:
:
:
:
:;
end
¡°TthAog2MyBattleCry=msg;¡±은 새로운 부분입니다. 이 변수 중 하나는 루아 변수이며 루아 변수는 루아 변수이며 루아 변수는 루아 변수이며 루아 변수는 루아 변수이며 루아 변수는 루아 변수입니다. 변수는 단지 슬롯 당신의 선택의 값을 보유. 많은 스크립팅 언어와 마찬가지로 루아는 변수를 다루는 데 매우 유연합니다. 는 경우¡ve 사용¡°강력한 형식¡±등의 프로그래밍 언어로는 C++,여러분이 궁금해할 수 있는 변수¡s¡°유형¡±. 루아 변수를 거기에 저장하고 싶은 거의 모든 것을 저장할 수있는 큰 빈 상자로 생각할 수 있습니다. 이 애드온에서는 사용자가 선호하는 전투 외침을 변수에 저장합니다.
변수의 한 가지 중요한 측면은 다음과 같습니다. 범위는 본질적으로 어떤 코드가이 변수를 볼 수 있다는 것을 의미합니다 기본적으로 변수는 전역 범위를 가지고 있으며,많은 함수가 변수를 볼 수 있습니다. 다른 유형의 범위는 다음과 같습니다. 이것이 우리에게 의미하는 바는 동일한 블록 내의 코드 만 변수를 볼 수 있다는 것입니다. A¡°블록¡±기본적으로 의미¡°때까지 다음 끝¡±. (루아의 범위에 대한 기술적 정의는 더 복잡하지만,우리는 여기서 그 세부 사항에 대해 걱정할 필요가 없습니다.)
에서 우리의 위를 들어,¡°TthAog2MyBattleCry¡±¡°global variable¡±,변 글로벌 범위가 있습니다. 이 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수가 생성 된 함수입니다. 같은 언어에서 오는 사람들을 위해 씨++,이 반 직관적 보일 수 있습니다. 그러나 루아에서는 변수가 로컬 범위를 갖는 것으로 명시 적으로 식별되지 않으면 자동으로 글로벌화됩니다. 함수 내에서 선언 된 경우에도 마찬가지입니다. 그래서 다음은 작동 할 것입니다:이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.이 응용 프로그램을 사용하면 채팅 메시지를 보낼 수 있습니다.두 함수에서 모두 사용된다는 것을 알 수 있습니다. 두 장소 모두 동일한 변수를 나타냅니다. 상자 비유를 사용하여 값을 상자에 넣으면 상자를 들여다보고 그 값을 볼 수 있습니다.
그러나 이러한 방식으로 전역 변수를 선언하는 것은 나쁜 방법입니다. 그것은 당신의 루아 파일의 상단에 그들을 선언하는 것이 훨씬 낫다. 이 두 가지 장점이 있습니다:
1)전역 변수의 전체 목록은 쉽게 한 눈에 그들 모두를 볼 수있는 바로 거기
2)당신은 변수가 제대로 초기화 확신 할 수 있습니다.
그래서 이것을하는 것이 훨씬 바람직합니다:
-이 변수는 우리의 전투 외침
을 보유하고 있습니다.”;
함수
-나중에 사용하기 위해 전투 외침을 설정합니다.
;
end
기능 TthAog2Event()
–메시지를 보내는 채팅
SendChatMessage(TthAog2MyBattleCry,”SAY”);
end
이것은 매우 쉽다는 것을 볼 것입니다.
지역 변수는 값만 간단히 필요할 때 유용합니다. 로컬을 사용하면 어떤 코드가 변수를 수정하는지 매우 명확합니다. 로컬은 매우 오래 존재하기 때문에 일반적으로 수정할 수 있는 모든 코드를 한 눈에 볼 수 있습니다. 그것은 그들이 그것을 설정할 때 사용자에게 다시 새로운 전투 외침을 반향하는 것이 좋습니다 것입니다. 이 작업을 수행 할 수 있습니다.:
기능
–나중에 사용하기 위해 전투 외침을 설정합니다.
–확인을위한 새로운 전투 외침을 에코.이 문제를 해결하려면 다음 단계를 수행하십시오.. msg;
TthAog2OutputToChat(에코);
end
우리는¡ve 소개한 여러 가지 새로운 것 외에도 지역 변수,그래서 그¡s 간단히 보면서 그들을 하나씩:
로컬 echo=TTH_AOG2_BATTLE_CRY_SET_TO.. 메시지;
이 줄은 로컬 변수라는 이름을 만듭니다. 예를 들어,텍스트 문자열은 텍스트 문자열의 내용으로 시작하고 메시지 내용으로 끝난 다음 해당 텍스트 문자열을 로컬 변수에 할당합니다. 이 예제에서는 다음과 같이 정의했습니다. 우리는 우리의 파일의 상단에 배치,이 라인을 정의 할 것이다:
로컬 전투 외침으로 설정”;
당신이 볼 수 있듯이,이 변수는 단순히 문자열을 포함합니다. 이 문자열은 절대 변경되지 않기 때문에,이 문자열은 100%상수 100%상수라고 합니다. 파일의 상단에 상수를 배치하는 것은 항상 좋은 생각이다. 당신이 표현을 변경해야하는 경우 그런 식으로,문자열은 매우 쉽게 찾을 수 있습니다. (우리가 6 부에서 볼 수 있듯이,그것은 또한 현지화,또는 여러 언어를 지원하는 것이 훨씬 쉽습니다. 또한 함수에 없는 경우에도 로컬 변수를 선언했습니다. 즉,변수는 이 파일 내에서만 존재하며 다른 파일에는 존재하지 않습니다. 하나의 파일에 변수를 사용하는 경우 항상 로컬로 만드는 것이 좋습니다. 그런 식으로,당신은 당신의 파일 외부의 어떤 코드도 그것을 수정하지 않았을 수도 있다는 것을 확신 할 수 있습니다. (당신은 왜 우리가 차오그 2 마이배틀을 로컬로 만들었는지 궁금 할 것입니다. 그 이유는 대부분 전역 변수가 어떻게 생겼는지 보여주고 싶었 기 때문입니다. 그러나 거기에 또 다른 이유가 있습니다,당신은 3 부에서 볼 수 있습니다.)
이제¡s 로 이동한 다음의 라인 우리의 기능:
TthAog2OutputToChat(에코);
이 라인 함수를 호출하는 것이 우리의 쓰기에 메시지를 보내는 채팅 영역입니다. 변수 에코가 함수에 전달됩니다. 이 함수는 다음과 같습니다.:
끝
끝
이 함수는 기본 채팅 프레임에 텍스트를 표시할 수 있는지 여부를 결정하고,이 경우 메시지의 텍스트를 채팅 영역에 표시합니다. 이 텍스트는 다른 플레이어가 볼 수 없습니다.이 텍스트는 애드온을 실행하는 플레이어에 대한 정보 텍스트입니다. 만약 당신이 함수에 변수를 전달하는 것이 어떻게 작동하는지에 대해 잘 모르는 경우,여기에 어떻게 진행됩니까?: 반향 변수를 전달하여 반향 2 출력을 호출 할 때 장면 뒤에 몇 가지가 있습니다. 다음 복사 에코에서 값을 메시지. 이것은 우리가 원하는대로 사용할 수있는,우리에게 메시지라는 로컬 변수를 제공합니다.
이렇게 하려면 함수를 만들어야 했습니다. 우리는 채팅 영역에 직접 출력 할 코드를 넣을 수있었습니다. 그러나 함수를 사용하면 채팅 영역에 텍스트를 출력하는 것이 정말 쉽습니다. 우리가 다른 곳에서 이것을 할 필요가 있다면,우리는 전체 코드 블록을 복사하지 않고 함수를 호출 할 필요가 있습니다. (우리는 3 부에서 이것을 활용할 것입니다.)또한 사용자에게 다른 방식으로 텍스트를 표시하기로 결정했다면 함수 내에서 코드를 수정하면됩니다. 다른 코드는 영향을 받지 않으므로 버그가 발생할 가능성이 줄어듭니다. 이 기능을 사용하면 두 가지 기능을 사용할 수 있습니다. 읽기 쉬운 코드는 디버그하기 쉬운 코드입니다.
우리는 루아 문자열 처리 또는 와우 프레임 계층 구조를 완전히 탐구했지만,이 시점에서 그렇게하는 것은 슬래시 명령의 주요 초점에서 산만해질 것입니다. 당신이 애드온의이 버전에서 무슨 일이 일어나고 있는지 이해하기 위해 희망 위의 충분하다.
모두 함께 넣어
이제 배틀 크라이 애드온을 다시 작성하여 사용자가 슬래시 명령을 통해 선호하는 배틀 크라이를 지정할 수 있습니다. 1 부에서와 마찬가지로 세 개의 파일이 관련되어 있습니다:
-toc 파일의
-XML 파일의
-Lua 코드 파일의
toc 파일을 거의 변경되지 않은 부분에서 하나:
## Interface: 11000
## Title: TenTonHammer Guide Part 2
## Author: TenTonHammer.com
## Notes: Makes your character scream a customizable battle cry when combat begins
TthAog2.xml
우리는¡ve 변경된¡°1¡±을¡°2¡±,변 노트 전화를 전투 울¡°자¡±대신¡°석¡±. 이 목차 파일을 다음과 같이 저장하십시오.폴더 애드온 아래의 폴더에 목차.
XML 파일은 동일한 부분 중 하나는 제외하고는 변경¡°1¡°2¡±:
<Ui xmlns=”http://www.blizzard.com/wow/ui/”xmlns:차질=”http://www.w3.org/2001/XMLSchema-instance”에 차질:schemaLocation=”http://www.blizzard.com/wow/ui/”>
<스크립트 파일에=”TthAog2.루아”/>
<프레임 이름=”TthAog2Core”>
<Scripts>
<OnLoad>TthAog2Load();</OnLoad>
<OnEvent>TthAog2Event();</OnEvent>
</Scripts>
</Frame>
</Ui>
이 파일을 다음과 같이 저장하십시오.폴더 애드온 아래에 있습니다.
마지막으로 코드 자체를 포함하는 루아 파일이 있습니다. 당신은 이미이 모든 조각을 보았습니다:
-상수 문자열.
“전투 외침으로 설정”;
-이 변수는 우리의 전투 외침을 담고 있습니다.
타오 2 미전투=”얼굴에 안!”;
끝
끝
–애드온이 로드될 때 호출됩니다.이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록:이벤트 등록
등록 이벤트(“플레이어 재생 중지됨”);
— 슬래시 명령을 만듭니다.2018 년 11 월 1 일(토)~2018 년 12 월 1 일(일)~2018 년 12 월 1 일(일)~2018 년 12 월 1 일(일)~2018 년 12 월 1 일(일)~2018 년 12 월 1 일(일)~2018 년 12 월 1 일(일)~2018 년 12 월 1 일(일)~2018 년 12 월 1 일(일);
SLASH_TTH_AOG2_SET_MY_BATTLE_CRY2=”/smbc2″;
end
–라는 슬래시 명령이 실행됩니다.
-나중에 사용하기 위해 전투 외침을 설정합니다.
–확인을위한 새로운 전투 외침을 에코.이 문제를 해결하려면 다음 단계를 수행하십시오.. 이 문제를 해결하려면 다음 단계를 따르세요.:::::::::::채팅에 메시지를 보냅니다. 이 문제를 해결하려면 다음을 수행하십시오.;
끝
1 부와 비교했을 때,우리는 슬래시 명령을 만드는 코드를 추가하고,슬래시 명령을 생성하는 코드를 추가하고,슬래시 명령을 추가하고,슬래시 명령을 추가하고,슬래시 함수를 추가하고,슬래시 이벤트를 사용하여 슬래시 전역 변수를 사용했습니다. 우리는 또한 더 많은 의견을 추가했습니다.
이 루아 파일을 타오 그 2 로 저장하십시오.폴더 애드온 아래에 루아.
그것은 무엇을 하는가
이제 와우 시작하고 싸움에 얻을. 당신은 바보 같은 전투 외침을 볼 수 있습니다 얼굴에 없습니다!¡±. 이 매개 변수의 기본값은 다음과 같습니다. 이제 다음을 입력하십시오:
/
당신은 채팅 영역에 새로운 전투 외침이 울리는 것을 볼 수 있습니다. 이제 또 다른 싸움에 들어가,당신은 전투 할 수 있습니다.¡±대신¡°지 않는다.¡±. 당신이 전투 외침을 해제하는 것을 선호하는 경우에,당신은 단지 입력 할 수 있습니다:
우리의 에코는이 경우에 대해 아주 잘 표현되어 있습니다(그냥 말할 것입니다. 이 일반 대중에 의해 사용하기위한 실제 애드온 인 경우,우리는 메시지의 값을 테스트하고 사용자가 전투 외침을 삭제하는 경우 특별한 에코를 표시 할 수 있습니다. 이것은 단지 예이기 때문에 우리는 코드를 복잡하게 만들었습니다.
최종 단어
당신이 애드온의 새 버전을 시도하고 캐릭터가 두 전투 울음 소리를 비명 경우,당신은 여전히 설치 및 활성화이 가이드의 부품 하나에서 애드온을 가지고 있기 때문에 아마. 기 때문에 우리가 주의 이름으로,이 원¡t 원인 오류가 있습니다. 그러나 그것은 아마도 당신이 원하는 것 중 하나입니다. 그냥 비활성화하거나 새로운 어쨌든 더 나은 다 첫 번째 버전을 삭제 얻을.
하지만 한 가지 문제가 있습니다. 당신이 닫고 와우 다시 시작할 때마다,당신은 얼굴에없는 다시 할 수 있습니다!¡±. 때 당신이 준비 다시,세 번째 부분으로 이동하고 우리는 당신이 선호하는 전투 외침을 만드는 방법을 볼 수 있습니다 세션간에 스틱.