2010-04-10 10 views
1

나는 잠시 동안 PGU (Phil 's Pygame Utilities)를 사용 해왔다. 이 인수로 전달됩니다 TDATA라는 사전을 가지고로드하는 동안 타일PGU 타일 충돌 감지

TDATA = {tileno : (agroup, hit_handler, 설정)}

내가이 개 그룹이있는 팩맨 클론을 만들고 있어요 : 플레이어와 유령, 같은 유형의 타일로 충돌 감지를하고 싶습니다.

예를 들어 타일 번호가 2 인 경우이 타일이 플레이어와 고스트 모두로 그룹화되기를 원합니다. 이 일에, 그것은 단지 제공,

그러나 :

TDATA = {('유령', tile_hit_2, 설정)는 0x02 :('플레이어', tile_hit_1, 설정)는 0x02} 나는 다음을 수행 시도 플레이어가 아니라 유령을위한 충돌 탐지.

플레이어와 유령 모두 동일한 유형의 타일로 충돌 감지를 수행 할 수있는 방법에 대한 아이디어가 있습니까? 로딩 TDATA 정보에 대한 코드가 vid.py (http://code.google.com/p/pgu/source/browse/trunk/pgu/vid.py)에서 http://code.google.com/p/pgu/

:

답변

0

I은 ​​소스 코드를 살펴 했어.

라인 (300) : def tga_load_tiles(self,fname,size,tdata={}): 라인 (324) 및 (325)에 다음

:

agroups,hit,config = tdata[n] 
tile.agroups = self.string2groups(agroups) 

그래서 라인 369 agroups 매개 변수를에 시작 string2groups의 definiton보고 쉼표에서 분할 된 문자열 . 그래서 나는 하나 이상의 그룹 이름을 문자열에 넣을 수 있다고 생각합니다.

시도 :

tdata = {0x02: ('player,ghost', tile_hit, config)}