Working on fixing enemy ids and spawning
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
@@ -85,10 +85,10 @@ abstract class MapObject {
|
||||
|
||||
// --- Enemy Range Constants ---
|
||||
static const int guardStart = 108; // 108-143
|
||||
static const int officerStart = 144; // 144-179
|
||||
static const int dogStart = 144; // 144-179
|
||||
static const int ssStart = 180; // 180-215
|
||||
static const int dogStart = 216; // 216-251
|
||||
static const int mutantStart = 252; // 252-287
|
||||
static const int mutantStart = 216; // 216-251
|
||||
static const int officerStart = 252; // 252-287
|
||||
|
||||
// --- Missing Decorative Bodies ---
|
||||
static const int deadGuard = 124; // Decorative only in WL1
|
||||
|
||||
@@ -201,6 +201,12 @@ abstract class Enemy extends Entity {
|
||||
return null;
|
||||
}
|
||||
|
||||
// Prevent bosses from accidentally spawning as regular enemies!
|
||||
if (objId >= MapObject.bossHansGrosse &&
|
||||
objId <= MapObject.bossFettgesicht) {
|
||||
return null;
|
||||
}
|
||||
|
||||
final type = EnemyType.fromMapId(objId);
|
||||
if (type == null) return null;
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ class EnemyAnimationMap {
|
||||
|
||||
enum EnemyType {
|
||||
guard(
|
||||
mapData: EnemyMapData(108),
|
||||
mapData: EnemyMapData(MapObject.guardStart),
|
||||
animations: EnemyAnimationMap(
|
||||
idle: SpriteFrameRange(50, 57),
|
||||
walking: SpriteFrameRange(58, 89),
|
||||
@@ -56,7 +56,7 @@ enum EnemyType {
|
||||
),
|
||||
),
|
||||
dog(
|
||||
mapData: EnemyMapData(216),
|
||||
mapData: EnemyMapData(MapObject.dogStart),
|
||||
animations: EnemyAnimationMap(
|
||||
idle: SpriteFrameRange(99, 106),
|
||||
walking: SpriteFrameRange(107, 130),
|
||||
@@ -67,7 +67,7 @@ enum EnemyType {
|
||||
),
|
||||
),
|
||||
ss(
|
||||
mapData: EnemyMapData(180),
|
||||
mapData: EnemyMapData(MapObject.ssStart),
|
||||
animations: EnemyAnimationMap(
|
||||
idle: SpriteFrameRange(138, 145),
|
||||
walking: SpriteFrameRange(146, 177),
|
||||
@@ -78,7 +78,7 @@ enum EnemyType {
|
||||
),
|
||||
),
|
||||
mutant(
|
||||
mapData: EnemyMapData(252),
|
||||
mapData: EnemyMapData(MapObject.mutantStart),
|
||||
animations: EnemyAnimationMap(
|
||||
idle: SpriteFrameRange(187, 194),
|
||||
walking: SpriteFrameRange(195, 226),
|
||||
@@ -89,7 +89,7 @@ enum EnemyType {
|
||||
),
|
||||
),
|
||||
officer(
|
||||
mapData: EnemyMapData(144),
|
||||
mapData: EnemyMapData(MapObject.officerStart),
|
||||
animations: EnemyAnimationMap(
|
||||
idle: SpriteFrameRange(238, 245),
|
||||
walking: SpriteFrameRange(246, 277),
|
||||
|
||||
Reference in New Issue
Block a user