najoan125 / KoreanPatch-multiLoader

GNU Lesser General Public License v3.0
0 stars 1 forks source link

Initial Dev #1

Closed Shihyeon closed 2 months ago

Shihyeon commented 2 months ago

패브릭 먼저 셋팅하고 있는데요.

run fabric client가 저는 에러 나는데 gradle 문제인지 intellij 문제인지 진짜 모르겠네요...

neo는 일단 켜지게만 해 두었습니다.

그리고 forge 모듈도 작성하실 건가요?

Shihyeon commented 2 months ago

패브릭은 KoreanPatchClient.init();InputManager.applyController(InputController.newController()); 코드에서 에러가 납니다.

fabric module

package com.hyfata.najoan.koreanpatch.client;

import net.fabricmc.api.ClientModInitializer;

public class KoreanPatchFabric implements ClientModInitializer {

    @Override
    public void onInitializeClient() {

        // This method is invoked by the Fabric mod loader when it is ready
        // to load your mod. You can access Fabric and Common code in this
        // project.

        // Use Fabric to bootstrap the Common mod.
        Constants.LOG.info("Hello Fabric world!");
        KoreanPatchClient.init(); // 여기
        KeyBindsFabric.register();
    }
}

common module

package com.hyfata.najoan.koreanpatch.client;

import com.hyfata.najoan.koreanpatch.platform.Services;
import com.hyfata.najoan.koreanpatch.plugin.InputController;
import com.hyfata.najoan.koreanpatch.plugin.InputManager;

public class KoreanPatchClient {
    public static boolean IME = false;
    public static boolean bypassInjection = false;

    public static void init() {
        if (Services.PLATFORM.isModLoaded(Constants.MOD_ID)) {
            InputManager.applyController(InputController.newController()); // 여기
            Constants.LOG.info("Korean Patch Loaded");
        }
    }
}
Shihyeon commented 2 months ago

임시로 KoreanPatchClient.init() 비활성화 하고, 패브릭 버전의 이벤트 리스너 코드를 가져와서 작동하는지 확인했습니다.

그렇게 작동을 확인하던 중 CreateWorldScreenMixin에서 오버플로우 에러를 뱉어내어, 임시로 월드스크린 인디케이터 비활성화해 두었습니다.

Shihyeon commented 2 months ago

패브릭은 CreateWorldScreenMixin과 모드 믹스인 부분 외에는 딱히 문제가 없어 보입니다.

다만 임시로 이벤트 리스너 부분을 땜빵했기에 이 부분만 멀티로더에 맞게 수정하면 좋을 것 같습니다.

Shihyeon commented 2 months ago

네오포지는 패브릭의 이 코드의 기능을 하는 부분이 추가되어야 할 것 같습니다.

Shihyeon commented 2 months ago

포지도 포함한다면 말씀해 주세요. 셋업해 두겠습니다.

Shihyeon commented 2 months ago

아... neoforge에 키보드 핸들러 안 넣어둬서 한영변환이 안 되었던 거네요...

쨋든 일단은 키보드 핸들러를 각 모듈에 배치했는데요. 추후에 키보드 핸들러 믹스인을 커먼에 두는 정리가 필요해 보입니다. + 키바인딩도

Shihyeon commented 2 months ago

이슈

멀티로더

피쳐

워크플로우

najoan125 commented 2 months ago

이미 알고 있었고 임시로 넣은거였는데 수정해주셨네요 감사합니다

najoan125 commented 2 months ago

아, 포지도 구현할 예정이에요