Devilution
Diablo devolved - magic behind the 1996 computer game
|
Go to the documentation of this file.
29 }
else if (
spelldata[sn].sManaCost == 255) {
30 ma = ((BYTE)
plr[
id]._pMaxManaBase - adj);
55 switch (
plr[
id]._pSplType) {
67 if (!debug_mode_key_inverted_v) {
86 if (debug_mode_key_inverted_v)
106 void CastSpell(
int id,
int spl,
int sx,
int sy,
int dx,
int dy,
int caster,
int spllvl)
137 for (i = (spllvl >> 1) + 3; i > 0; i--) {
145 int nx, ny, max, min, x, y;
150 for (i = 0; i < 8; i++) {
162 for (max = 1, min = -1; min > -50 && !done; max++, min--) {
163 for (y = min; y <= max && !done; y++) {
166 for (x = min; x <= max && !done; x++) {
197 if ((
char)rid != -1) {
205 if ((
char)rid != -1 &&
plr[rid]._pHitPoints == 0) {
219 if (
plr[rid]._pMaxHPBase < 640) {
246 if ((
char)rid != -1 && (
plr[rid]._pHitPoints >> 6) > 0) {
247 hp = (
random_(57, 10) + 1) << 6;
250 hp += (
random_(57, 4) + 1) << 6;
254 hp += (
random_(57, 6) + 1) << 6;
267 if (
plr[rid]._pHitPoints >
plr[rid]._pMaxHP) {
273 if (
plr[rid]._pHPBase >
plr[rid]._pMaxHPBase) {
BOOL PosOkPlayer(int pnum, int x, int y)
void SetPlayerHitPoints(int pnum, int val)
void DoHealOther(int pnum, int rid)
void ClrPlrPath(int pnum)
void CalcPlrInv(int p, BOOL Loadgfx)
DEVILUTION_BEGIN_NAMESPACE SpellData spelldata[]
Data related to each spell ID.
int AddMissile(int sx, int sy, int dx, int dy, int midir, int mitype, char micaster, int id, int midam, int spllvl)
void RemoveScroll(int pnum)
#define DEVILUTION_END_NAMESPACE
static void PlacePlayer(int pnum)
MonsterStruct monster[MAXMONSTERS]
void StartStand(int pnum, int dir)
int GetSpellLevel(int id, int sn)
BOOL CheckSpell(int id, int sn, char st, BOOL manaonly)
void DoResurrect(int pnum, int rid)
unsigned char sMissiles[3]
DEVILUTION_BEGIN_NAMESPACE int GetManaAmount(int id, int sn)
int random_(BYTE idx, int v)
Main RNG function.
void UseMana(int id, int sn)
void CastSpell(int id, int spl, int sx, int sy, int dx, int dy, int caster, int spllvl)
char dPlayer[MAXDUNX][MAXDUNY]
PlayerStruct plr[MAX_PLRS]
void UseStaffCharge(int pnum)