📄 m_hover.pas
字号:
{
=======================================
hover
=======================================
}
// m_hover.c and m_hover.h
// converted by Bob Janova <bob@redcorona.com>
{ ISSUES to be resolved:
MFrame_t lists - array or pointer? (see line 100) - incompat. types
Should procedures be declared CDECL, SAFECALL or neither?
}
unit m_hover;
interface uses g_local; // g_local.h
{$I m_hover.inc} // m_hover.h
function visible (Self, Other: PEdict_t): QBoolean;
var sound_pain1, sound_pain2,
sound_death1, sound_death2,
sound_sight,
sound_search1, sound_search2: Integer;
procedure hover_run (Self: PEdict_t);
procedure hover_stand (Self: PEdict_t);
procedure hover_dead (Self: PEdict_t);
procedure hover_attack (Self: PEdict_t);
procedure hover_reattack (Self: PEdict_t);
procedure hover_fire_blaster (Self: PEdict_t);
procedure hover_die (Self, Inflictor, Attacker: PEdict_t; Damage: Integer; Point: Vec3_t);
// TEMP so it will compile
procedure AI_Stand(self: edict_p; dist: single); cdecl;
procedure AI_Move(self: edict_p; dist: single); cdecl;
procedure AI_Charge(self: edict_p; dist: single); cdecl;
const hover_frames_stand: array[0..29] of mframe_t = (
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Stand; Dist: 0; ThinkFunc: nil) );
Hover_move_stand: MMove_t = (
FirstFrame:FRAME_stand01; LastFrame:FRAME_stand30; Frame:hover_frames_stand; EndFunc: nil);
hover_frames_stop1: array [0..8] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil));
Hover_move_stop1: MMove_t = (
FirstFrame:FRAME_stop101; LastFrame:FRAME_stop109; Frame:hover_frames_stop1; EndFunc:nil);
hover_frames_stop2: array [0..7] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil));
Hover_move_stop2: MMove_t = (
FirstFrame:FRAME_stop201; LastFrame:FRAME_stop208; Frame:hover_frames_stop2; EndFunc:nil);
Hover_frames_takeoff: Array[0..29] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 5; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -6; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -9; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 3; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil));
Hover_move_takeoff: MMove_t = (
FirstFrame:FRAME_takeof01; LastFrame:FRAME_takeof30; Frame:hover_frames_takeoff; EndFunc:nil);
hover_frames_pain3: array [0..8] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil));
Hover_move_pain3: MMove_t = (
FirstFrame:FRAME_pain301; LastFrame:FRAME_pain309; Frame:hover_frames_pain3; Hover_Run:nil);
hover_frames_pain2: array [0..11] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil));
Hover_move_pain2: MMove_t = (
FirstFrame:FRAME_pain201; LastFrame:FRAME_pain212; Frame:hover_frames_pain2; Hover_Run:nil);
hover_frames_pain1: array [0..27] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -8; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -6; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: -3; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 3; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 3; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 7; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 1; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 2; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 5; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 3; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil));
Hover_move_pain1: MMove_t = (
FirstFrame:FRAME_pain101; LastFrame:FRAME_pain128; Frame:hover_frames_pain1; Hover_Run:nil);
hover_frames_land: Array[0..0] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil));
Hover_move_land: MMove_t = (
FirstFrame:FRAME_land01; LastFrame:FRAME_land01; Frame:hover_frames_land; EndFunc:nil);
hover_frames_forward: Array[0..34] of MFrame_t = (
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 0; ThinkFunc: nil));
Hover_move_forward: MMove_t = (
FirstFrame:FRAME_forwrd01; LastFrame:FRAME_forwrd35; Frame:hover_frames_forward; EndFunc:nil);
hover_frames_walk: Array[0..34] of MFrame_t = (
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil),
(AIFunc: AI_Move; Dist: 4; ThinkFunc: nil));
Hover_move_walk: MMove_t = (
FirstFrame:FRAME_forwrd01; LastFrame:FRAME_forwrd35; Frame:hover_frames_walk; EndFunc:nil);
hover_frames_run: Array[0..34] of MFrame_t = (
(AIFunc: AI_Move; Dist: 10; ThinkFunc: nil),
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -