new collie.PathFinding(oMap, fBeforeMove)
Path Finding with collie.Map
Name | Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
oMap |
collie.Map | ||||||||||
fBeforeMove |
Function |
해당 타일에 이동해도 되는지 판단하는 함수, 이동할 수 없다면 false를 반환해야 한다
|
Example
var finder = new collie.PathFinding(map, function (tile, map) {
if (tile.isBlock) { // isBlock is a custom option.
return false;
}
// you can make a custom logic for checking a tile that you can go by return false.
...
});
// You can get array as [[x, y], [x, y] ...].
var aPath = finder.find(0, 0, 5, 5); // startTileX, startTileY, endTileX, endTileY
console.log(aPath);
// If you want to find what a tile you can go, you can use a beforeMove method
if (finder.beforeMove(map.getTile(5, 5))) {
console.log("I can go there!");
}
Extends
Requires
- module:collie.addon.js
Methods
-
inherited attach(vEvent, fHandler){collie.Component}
-
이벤트 핸들러 추가
Name Type Description vEvent
Object | String fHandler
Function Returns:
체이닝 지원
-
beforeMove(htTile){Boolean}
-
움직일 수 있는 타일인지 확인
Name Type Description htTile
Object displayObject가 아니라 tile 정보 객체
-
inherited detach(vEvent, fHandler)
-
이벤트 핸들러를 해제한다
Name Type Description vEvent
Object | String fHandler
Function 값이 없을 경우 이 이벤트에 할당된 전체 핸들러를 해제한다
-
inherited detachAll(sName)
-
모든 이벤트 핸들러를 해제
Name Type Description sName
String 이벤트 이름, 값이 없으면 이 컴포넌트에 할당된 모든 이벤트를 해제한다
-
find(nFromTileX, nFromTileY, nToTileX, nToTileY){Array|Boolean}
-
길찾기
Name Type Description nFromTileX
Number nFromTileY
Number nToTileX
Number nToTileY
Number Returns:
y1], [x2, y2], ... ]
-
inherited fireEvent(sName, oEvent){Boolean}
-
이벤트 발생
Name Type Description sName
String oEvent
Object Returns:
발생 중 collie.ComponentEvent의 stop 메소드가 실행될 경우 false를 반환한다
-
inherited get(sName){Variables}
-
DisplayObject와 Layer의 서로 다른 인터페이스를 맞추기 위한 임시 메서드
Name Type Description sName
String -
getMap(){collie.Map}
-
-
inherited option(vName, vValue, bNotOverwrite)
-
컴포넌트의 옵션을 설정한다.
Name Type Description vName
Object | String 옵션 이름이나 여러 옵션을 설정할 수 있는 객체를 넣을 수 있다.
vValue
Variables optional 옵션 값, 값이 없다면 해당 옵션 값을 반환한다.
bNotOverwrite
Boolean optional 이 값이 true면 기존에 값이 있을 경우 덮이 씌우지 않는다
Example
component.option({ a : 1, b : true });
component.option("a", 1); component.option("a"); // return 1
-
inherited optionSetter(sName, fSetter)
-
옵션 값이 설정될 때 실행될 함수를 지정한다. Setter는 한 속성 당 한 개의 함수만 설정할 수 있다.
Name Type Description sName
String fSetter
Function -
inherited set(sName, vValue, bNotOverwrite){Object}
-
DisplayObject와 Layer의 서로 다른 인터페이스를 맞추기 위한 임시 메서드
Name Type Description sName
String vValue
Variables bNotOverwrite
Boolean optional Returns:
method chaining
-
inherited unset(sKey)
-
옵션을 제거한다
Name Type Description sKey
String