2012-10-15 3 views
0

내 레벨을 만드는 데 lua를 사용하고, 그 레벨 내부의 맵을 사용하려는이 아이디어가 있습니다. 간단하고 명확하게 데이터를 조작하고 앱 스토어에서 새로운 수준을 구매 기능으로 추가 할 수 있기를 바랍니다. 루아를 사용하여 어떻게 그 맵 안에 맵과 레벨을 만들 수 있습니까? 루아는 OOP를 지원하여베이스 맵 "클래스"와베이스 레벨 "클래스"를 만들거나 모든 것을 하드 코딩해야합니까? 화난 새들이 루아를 사용한다는 사실을 알고 있습니다.lua를 사용하여 cocos2d에서 레벨과 맵을 만들려면 어떻게해야합니까?

모든 방향이나 샘플을 감상 해주십시오. 감사.

답변

0

Lua는 클래스를 직접 지원하지 않지만 (클래스와 유사한 기능을 제공하는 라이브러리가 있지만) 대신 테이블이라는 데이터 구조를 사용합니다. 테이블은 문자열, 숫자, 함수 및 기타 테이블을 포함 할 수 있기 때문에 매우 다양합니다.

루아의 큰 장점은 스크립트로 작성되므로 컴파일 된 게임이 실행되는 동안 파일로 다운로드하여 실행할 수 있다는 것입니다. 여기에 .lua 파일에 저장 수준의 가능한 예는 다음과 같습니다

return { 
    name = 'Example level', 
    score = 80, 
    map = { 
    height = 8, 
    width = 8, 
    data = 'sssssssssoooooossoooooossoooooossoooooossoooooossbooooesssssssss' 
    }, 
    ondraw = function (self) 
    drawmap(self.map) 
    drawscore(self.score) 
    end 
} 

당신이 유용한 메타 테이블이다 찾을 수있는 또 다른 기능을. 그들은 일종의 상속을 테이블과 함께 사용할 수 있습니다. 메타 테이블을 사용하여 클래스를 구현하는 방법에 대한 자세한 내용은 여기를 참조하십시오. http://lua-users.org/wiki/SimpleLuaClasses

관련 문제