option 파라미터에서 지정할 수 있으며, 다음 7가지 속성을 지정할 수 있습니다.
let blueman = App.loadSpritesheet('blueman.png', 48, 64, {
left: [5, 6, 7, 8, 9],
up: [15, 16, 17, 18, 19],
down: [0, 1, 2, 3, 4],
right: [10, 11, 12, 13, 14],
dance: [20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],
down_jump: [38],
left_jump: [39],
right_jump: [40],
up_jump: [41],
}, 8);
App.addOnKeyDown(81, function (player) {
const objectKey = "TestBlueMan";
const bluemanObject = Map.putObjectWithKey(18, 6, blueman, {
npcProperty: { name: "BlueMan", hpColor: 0x03ff03, hp: 100, hpMax: 100 },
overlap: true,
movespeed: 100,
key: objectKey,
useDirAnim: true,
offsetX: -8,
offsetY: -32,
});
Map.playObjectAnimationWithKey(objectKey, "down", -1);
});
let blueman = App.loadSpritesheet('blueman.png', 48, 64, {
left: [5, 6, 7, 8, 9], // 좌방향 이동 이미지
up: [15, 16, 17, 18, 19],
down: [0, 1, 2, 3, 4],
right: [10, 11, 12, 13, 14],
dance: [20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],
down_jump: [38],
left_jump: [39],
right_jump: [40],
up_jump: [41],
}, 8);
App.addOnKeyDown(81, function (player) {
const objectKey = "TestBlueMan";
const bluemanObject = Map.putObjectWithKey(18, 6, blueman, {
npcProperty: { name: "BlueMan", hpColor: 0x03ff03, hp: 100, hpMax: 100 },
overlap: true,
collide: true, // ★ collid: true
movespeed: 100,
key: objectKey,
useDirAnim: true,
offsetX: -8,
offsetY: -32,
});
Map.playObjectAnimationWithKey(objectKey, "down", -1);
});
App.onAppObjectAttacked.Add(function (p, x, y, layer, key) {
const targetObject = Map.getObjectWithKey(key);
targetObject.npcProperty.hp -= 10;
if(targetObject.npcProperty.hp > 0) {
const hpPercentage = targetObject.npcProperty.hp / targetObject.npcProperty.hpMax;
if (hpPercentage < 0.3) {
targetObject.npcProperty.hpColor = 0xff0000;
} else if (hpPercentage < 0.7) {
targetObject.npcProperty.hpColor = 0xffa500;
}
targetObject.sendUpdated();
} else {
Map.putObjectWithKey(targetObject.tileX, targetObject.tileY, null, { key: key })
}
});