X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_monsters.pas;h=df1b4acfff22c5e1aaf7f64599bdb9f007e0ce59;hb=aa7e40301df69aa13c00ff2bcdb8e532b06b8053;hp=3301dd4c61263cdd719bb977c4bf813637f42f86;hpb=e979719019322a78e7fded8fd96130c18cf31972;p=d2df-sdl.git diff --git a/src/game/g_monsters.pas b/src/game/g_monsters.pas index 3301dd4..df1b4ac 100644 --- a/src/game/g_monsters.pas +++ b/src/game/g_monsters.pas @@ -521,7 +521,7 @@ var implementation uses - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_MENU} g_menu, {$ENDIF} e_log, g_sound, g_gfx, g_player, g_game, @@ -1663,7 +1663,7 @@ begin FAnim[a, TDirection.D_LEFT] := TAnimationState.Create(ANIMTABLE[a].loop, MONSTER_ANIMTABLE[MonsterType].AnimSpeed[a], MONSTER_ANIMTABLE[MonsterType].AnimCount[a]); end; if MonsterType = MONSTER_VILE then - vilefire := TAnimationState.Create(True, 2, 0); // !!! len + vilefire := TAnimationState.Create(True, 2, 8); end; function TMonster.Damage(aDamage: Word; VelX, VelY: Integer; SpawnerUID: Word; t: Byte): Boolean; @@ -4140,7 +4140,7 @@ begin anim := (vilefire <> nil); utils.writeBool(st, anim); // Если есть - сохраняем: - if anim then vilefire.SaveState(st); + if anim then vilefire.SaveState(st, 0, False); // Анимации for i := ANIM_SLEEP to ANIM_PAIN do begin @@ -4148,12 +4148,12 @@ begin anim := (FAnim[i, TDirection.D_LEFT] <> nil); utils.writeBool(st, anim); // Если есть - сохраняем - if anim then FAnim[i, TDirection.D_LEFT].SaveState(st); + if anim then FAnim[i, TDirection.D_LEFT].SaveState(st, 0, False); // Есть ли правая анимация anim := (FAnim[i, TDirection.D_RIGHT] <> nil); utils.writeBool(st, anim); // Если есть - сохраняем - if anim then FAnim[i, TDirection.D_RIGHT].SaveState(st); + if anim then FAnim[i, TDirection.D_RIGHT].SaveState(st, 0, False); end; end; @@ -4161,8 +4161,8 @@ end; procedure TMonster.LoadState (st: TStream); var i: Integer; - b: Byte; - anim: Boolean; + b, alpha: Byte; + anim, blending: Boolean; begin assert(st <> nil); @@ -4222,7 +4222,7 @@ begin if anim then begin Assert(vilefire <> nil, 'TMonster.LoadState: no vilefire anim'); - vilefire.LoadState(st); + vilefire.LoadState(st, alpha, blending); end; // Анимации for i := ANIM_SLEEP to ANIM_PAIN do @@ -4233,7 +4233,7 @@ begin if anim then begin Assert(FAnim[i, TDirection.D_LEFT] <> nil, 'TMonster.LoadState: no '+IntToStr(i)+'_left anim'); - FAnim[i, TDirection.D_LEFT].LoadState(st); + FAnim[i, TDirection.D_LEFT].LoadState(st, alpha, blending); end; // Есть ли правая анимация anim := utils.readBool(st); @@ -4241,7 +4241,7 @@ begin if anim then begin Assert(FAnim[i, TDirection.D_RIGHT] <> nil, 'TMonster.LoadState: no '+IntToStr(i)+'_right anim'); - FAnim[i, TDirection.D_RIGHT].LoadState(st); + FAnim[i, TDirection.D_RIGHT].LoadState(st, alpha, blending); end; end; end;