이도류

2007.04.12 11:45

그리움 조회 수:199 추천:53

Young ────────────────────────────────────
제목:[강좌] 이도류 도입
#26 글쓴이:이승철 (10love04) 등록시각:12/26 00:39p 조회:44
───────────────────────────────────────
안녕하세요 키르입니다.
답변을 해주신 이니님께 감사드리고..(이니님의 글입니다.)


                안녕하세요. 이니입니다.



이건.. 좀 힘든 내용이네요. 이것도 소스는 올리지 않고 설명만 드리겠습니다



일단, MAXWEAR 라는 상수가 있습니다. 총 방어구 입는 곳이 20군데라고

정의 한거지요. 만약, 무기를 하나 더 무장하려면 21이 되야 합니다.

그럼 MAXWEAR 를 21로 고치면 되는데.. 그럼 이전의 플레이어 데이타는

모두 날아갑니다.



그리고. Mordor가.. 형식성이 없는게.. MAXWEAR 로 정의 했으면서.. 엔진

부분에서는 MAXWEAR가 아닌 20으로 직접 대입합니다. 그래서.. 이런곳도

다 찾아서 MAXWEAR 로 고쳐야 합니다. 안그러면 저장이 안되요.

(이전에 방어구 갯수 변경하다가 일주일동안 머리 싸맸습니다. 플레이어
                                                                      
데이타 다 날리고.. 접속하는 족속 다 유령아이디 되고.. 원인 찾다가
20 이란걸 발견한건데.. 이게 수도 없이 널려 있습니다. files1.c 에만
5군데 정도 됩니다. 이걸 하나라도 못찾아서 변경 못하면 머드는 갑니다.
이전에 닥치는 대로 막 바꿔서.. 저도 어디있는지는 다 모르겠네요)

쉬운 방법은 방어구 위치를 하나 없애는 방법입니다.
19번이 얼굴이니.. 머드에서 탈춤출것도 아니니 없애버린다고 가정...
FACE -> SUBWIELD 로 이름을 바꿉니다.

이거 하나 바꾸고 컴파일 해도 수도 없는 컴파일 에러가 쏟아집니다.
FACE 와 관련된 루틴이 그런데요. 이 부분들은 다 지워주셔야 합니다.

그리고 무장 루틴. command3.c 의 ready 함수를 똑같이 복사해서
sub_ready 를 만들고.. 보조무장이라는 명령어를 만들어 붙입니다.
그리고 sub_ready의 모든 WIELD는 SUBWIELD로 바꿔야 겠죠.
보조 무장이니, WIELD가 무장이 안되었을때는 무장 안되게 하는게 좋고요.

그리고 전투. command5.c 의 attack_crt 함수에서.. 무기로 적을 공격하는
부분을 복사해 아래에 똑같이 한번 더 붙입니다. 물론 SUBWIELD가 되겠죠.

그리고 죽었을때 무기 떨어뜨리는것은 creature.c 의 die 함수에서
SUBWIELD 와도 비교하게 해야겠죠.

이렇게만 한다면.. 거의 완성일듯 싶네요. 말이 쉽지.. 바꾸는건 거의
환상적인 노가다 입니다.

열심히 하셔셔 좋은 머드 만드세요.

        
홈지기 "그륨"


XE Login