최근 변경
최근 토론
특수 기능
파일 올리기
작성이 필요한 문서
고립된 문서
고립된 분류
분류가 되지 않은 문서
편집된 지 오래된 문서
내용이 짧은 문서
내용이 긴 문서
차단 내역
RandomPage
라이선스
IP 사용자
216.73.216.49
설정
다크 모드로 전환
로그인
Jongyeol
(r30 문단 편집)
닫기
RAW 편집
미리보기
===== 패치 ===== JALib에선 기존 Harmony 기능보다 다양하게 패치를 진행할 수 있다. 일반 패치 매서드는 다음과 같이 만들 수 있다. {{{#!syntax csharp [JAPatch(typeof(Main), "OnEnable", PatchType.Prefix, false, TryingCatch = true)] private static void OnEnablePrefix(Main __instance) { __instance.Log("Enable Prefix"); } }}} PatchType에는 다음과 같은 종류가 있다. * Prefix * Postfix * Transpiler * Finalizer * Replace TryingCatch를 통해 이 패치 매서드에서 예외발생을 방지할 지 설정할 수 있다. Reverse 패치 매서드는 다음과 같이 만들 수 있다. {{{#!syntax csharp [JAReversePatch(typeof(Main), "OnEnable", ReversePatchType.Original)] private static void OnEnableReverse(Main __instance) => throw new NotImplementedException(); }}} ReversePatchType은 Flag로 여러개를 한번에 선택할 수 있으며 다음과 같은 종류가 있다. * Original = 0 * PrefixCombine = 1 * PostfixCombine = 2 * TranspilerCombine = 4 * FinalizerCombine = 8 * ReplaceCombine = 16 * OverrideCombine = 32 * AllCombine = PrefixCombine | PostfixCombine | TranspilerCombine | FinalizerCombine | ReplaceCombine | OverrideCombine * DontUpdate = 0x40000000 Override 패치 매서드는 기본적으로 상속된 매서드에서 사용할 수 있다. Override 패치 매서드는 다음과 같이 만들 수 있다. {{{#!syntax csharp [JAOverridePatch] public void OnEnable() { Log("MyMod is Enabled but Patched!"); } }}}
요약
문서 편집을
저장
하면 당신은 기여한 내용을
CC BY-NC-SA 4.0
으로 배포하고 기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다. 이
동의는 철회할 수 없습니다.
비로그인 상태로 편집합니다. 로그인하지 않은 상태로 문서 편집을 저장하면, 편집 역사에 본인이 사용하는 IP(216.73.216.49) 주소 전체가 영구히 기록됩니다.
저장
사용자
216.73.216.49
IP 사용자
로그인
회원가입
최근 변경
[불러오는 중...]