DEADSOFTWARE

update copyrights
[flatwaifu.git] / src / player.h
index e56357c961764f21f3eaeb0a18b380cc904070e2..6b7f0ea91f4f33b7e34b6c73b3149810e907e225 100644 (file)
@@ -1,26 +1,25 @@
-/*
-   Copyright (C) Prikol Software 1996-1997
-   Copyright (C) Aleksey Volynskov 1996-1997
-   Copyright (C) <ARembo@gmail.com> 2011
+/* Copyright (C) 1996-1997 Aleksey Volynskov
+ * Copyright (C) 2011 Rambo
+ * Copyright (C) 2020 SovietPony
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, version 3 of the License ONLY.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
 
-   This file is part of the Doom2D:Rembo project.
+#ifndef PLAYER_H_INCLUDED
+#define PLAYER_H_INCLUDED
 
-   Doom2D:Rembo is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License version 2 as
-   published by the Free Software Foundation.
-
-   Doom2D:Rembo is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, see <http://www.gnu.org/licenses/> or
-   write to the Free Software Foundation, Inc.,
-   51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
-*/
-
-// Player data and functions
+#include "glob.h"
+#include "view.h" // obj_t
 
 #define PL_DRAWLIFE  1
 #define PL_DRAWARMOR 2
 #define PLF_UP    4
 #define PLF_DOWN  8
 
+#define PL_AIR 360
 #define PL_POWERUP_TIME 546
 
-#pragma pack(1)
-typedef struct{
+typedef struct {
   obj_t o;
   int looky;
-  int st,s;
-  int life,armor,hit,hito;
-  int pain,air;
-  int invl,suit;
+  int st, s;
+  int life, armor, hit, hito;
+  int pain, air;
+  int invl, suit;
   char d;
-  //byte ku,kd,kl,kr,kf,kj,kwl,kwr,kp;
-  int frag,ammo,shel,rock,cell,fuel,kills,secrets;
-  byte fire,cwpn,csnd;
+  int frag, ammo, shel, rock, cell, fuel, kills, secrets;
+  byte fire, cwpn, csnd;
   byte amul;
   word wpns;
   char wpn;
@@ -69,25 +67,31 @@ typedef struct{
   int id;
   byte keys;
   char lives;
-  int ku,kd,kl,kr,kf,kj,kwl,kwr,kp;
-}player_t;
-#pragma pack()
+  int ku, kd, kl, kr, kf, kj, kwl, kwr, kp;
+} player_t;
 
-void PL_init(void);
-void PL_alloc(void);
-void PL_spawn(player_t *,int,int,char);
-int PL_hit(player_t *,int,int,int);
-int PL_isdead(player_t *);
-void PL_act(player_t *);
-void PL_draw(player_t *);
-void PL_drawst(player_t *);
-void PL_cry(player_t *);
-void PL_damage(player_t *);
-int PL_give(player_t *,int);
-void G_respawn_player(player_t *);
+extern byte p_immortal;
+extern byte p_fly;
+extern int PL_JUMP;
+extern int PL_RUN;
 
-void PL_reset(void);
-void *PL_getspr(int c,int d);
+extern player_t pl1;
+extern player_t pl2;
 
-extern byte p_immortal;
-extern player_t pl1,pl2;
+extern byte plr_goanim[];
+extern byte plr_dieanim[];
+extern byte plr_slopanim[];
+
+int PL_isdead (player_t *p);
+void PL_init (void);
+void PL_alloc (void);
+void PL_reset (void);
+void PL_spawn (player_t *p, int x, int y, char d);
+int PL_hit (player_t *p, int d, int o, int t);
+void PL_damage (player_t *p);
+void PL_cry (player_t *p);
+int PL_give (player_t *p, int t);
+void PL_act (player_t *p);
+void bfg_fly (int x, int y, int o);
+
+#endif /* PLAYER_H_INCLUDED */