내 게임용 modding API를 작성 중이며 사용자가 API 함수 중 하나 또는 그 직전에 mod 함수를 실행하도록 게임 엔진에 지시 할 수 있습니다. 기능을 "확장"합니다.사용자가 API 함수를 "확장"할 수 있도록 허용
지금까지는 모더스가 게임의 소스 코드를 파헤치는 기능을 추가하기 위해 함수를 다시 작성해야했습니다.
지금 내가 이런 식으로 생각하고 있어요 :
이를 구현하기 위해 비교적 깨끗한 방법이 될 것입니다 무엇을 지금def moddersFunction():
pass
myAPI.extendFunction('functionName', 'before-or-after', moddersFunction, extraArgs=[])
? 즉, myAPI.extendFunction
의 내부 구조는 작성한 것처럼 보이게됩니까?
myAPI.extendFunction이 함수를 추가하고 내 API의 함수가 설정 ("등록")되어있는 경우 mod의 함수를 검사하고 실행하는 사전이 있다고 생각합니다. 그러나 이것은 확장을 허용하고자하는 내 modding API의 모든 단일 함수에서 사전을 검사하는 코드를 추가하는 것을 의미합니다 (심지어 함수 자체를 호출하는 check 및 function을 수행하는 단일 함수 호출이라 할지라도,).
내 게임 API의 기존 소스 코드를 "도살"하지 않고 기능을 "확장"할 수있는 멋진 파이썬 트릭이 있는지 궁금합니다.
대답이 Py3K에만 해당되는 경우 언급하십시오. –