mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-01-09 17:02:00 +00:00
Fixes nutrition displays not updating. Adds code support for species-variable levels of max nutrition storage, and nutrition loss. No actual variations are yet implemented, awaiting input from lore team. Fixes all relevant static isntances of numeric literals with the max_nutrition variable And a feature tweak: Players will now spawn with randomised nutrition levels when they join
169 lines
5.7 KiB
Plaintext
169 lines
5.7 KiB
Plaintext
// /mob/var/stat things.
|
|
#define CONSCIOUS 0
|
|
#define UNCONSCIOUS 1
|
|
#define DEAD 2
|
|
|
|
// Bitflags defining which status effects could be or are inflicted on a mob.
|
|
#define CANSTUN 0x1
|
|
#define CANWEAKEN 0x2
|
|
#define CANPARALYSE 0x4
|
|
#define CANPUSH 0x8
|
|
#define LEAPING 0x10
|
|
#define PASSEMOTES 0x32 // Mob has a cortical borer or holders inside of it that need to see emotes.
|
|
#define GODMODE 0x1000
|
|
#define FAKEDEATH 0x2000 // Replaces stuff like changeling.changeling_fakedeath.
|
|
#define DISFIGURED 0x4000 // Set but never checked. Remove this sometime and replace occurences with the appropriate organ code
|
|
#define XENO_HOST 0x8000 // Tracks whether we're gonna be a baby alien's mummy.
|
|
|
|
// Grab levels.
|
|
#define GRAB_PASSIVE 1
|
|
#define GRAB_AGGRESSIVE 2
|
|
#define GRAB_NECK 3
|
|
#define GRAB_UPGRADING 4
|
|
#define GRAB_KILL 5
|
|
|
|
#define BORGMESON 0x1
|
|
#define BORGTHERM 0x2
|
|
#define BORGXRAY 0x4
|
|
#define BORGMATERIAL 8
|
|
|
|
#define HOSTILE_STANCE_IDLE 1
|
|
#define HOSTILE_STANCE_ALERT 2
|
|
#define HOSTILE_STANCE_ATTACK 3
|
|
#define HOSTILE_STANCE_ATTACKING 4
|
|
#define HOSTILE_STANCE_TIRED 5
|
|
|
|
#define LEFT 1
|
|
#define RIGHT 2
|
|
|
|
// Pulse levels, very simplified.
|
|
#define PULSE_NONE 0 // So !M.pulse checks would be possible.
|
|
#define PULSE_SLOW 1 // <60 bpm
|
|
#define PULSE_NORM 2 // 60-90 bpm
|
|
#define PULSE_FAST 3 // 90-120 bpm
|
|
#define PULSE_2FAST 4 // >120 bpm
|
|
#define PULSE_THREADY 5 // Occurs during hypovolemic shock
|
|
#define GETPULSE_HAND 0 // Less accurate. (hand)
|
|
#define GETPULSE_TOOL 1 // More accurate. (med scanner, sleeper, etc.)
|
|
|
|
//intent flags, why wasn't this done the first time?
|
|
#define I_HELP "help"
|
|
#define I_DISARM "disarm"
|
|
#define I_GRAB "grab"
|
|
#define I_HURT "harm"
|
|
|
|
//These are used Bump() code for living mobs, in the mob_bump_flag, mob_swap_flags, and mob_push_flags vars to determine whom can bump/swap with whom.
|
|
#define HUMAN 1
|
|
#define MONKEY 2
|
|
#define ALIEN 4
|
|
#define ROBOT 8
|
|
#define SLIME 16
|
|
#define SIMPLE_ANIMAL 32
|
|
#define HEAVY 64
|
|
#define ALLMOBS (HUMAN|MONKEY|ALIEN|ROBOT|SLIME|SIMPLE_ANIMAL|HEAVY)
|
|
|
|
//Types of diona, returned by is_diona
|
|
#define DIONA_NYMPH 1
|
|
#define DIONA_WORKER 2
|
|
|
|
// Robot AI notifications
|
|
#define ROBOT_NOTIFICATION_NEW_UNIT 1
|
|
#define ROBOT_NOTIFICATION_NEW_NAME 2
|
|
#define ROBOT_NOTIFICATION_NEW_MODULE 3
|
|
#define ROBOT_NOTIFICATION_MODULE_RESET 4
|
|
|
|
// Appearance change flags
|
|
#define APPEARANCE_UPDATE_DNA 0x1
|
|
#define APPEARANCE_RACE (0x2|APPEARANCE_UPDATE_DNA)
|
|
#define APPEARANCE_GENDER (0x4|APPEARANCE_UPDATE_DNA)
|
|
#define APPEARANCE_SKIN 0x8
|
|
#define APPEARANCE_HAIR 0x10
|
|
#define APPEARANCE_HAIR_COLOR 0x20
|
|
#define APPEARANCE_FACIAL_HAIR 0x40
|
|
#define APPEARANCE_FACIAL_HAIR_COLOR 0x80
|
|
#define APPEARANCE_EYE_COLOR 0x100
|
|
#define APPEARANCE_ALL_HAIR (APPEARANCE_HAIR|APPEARANCE_HAIR_COLOR|APPEARANCE_FACIAL_HAIR|APPEARANCE_FACIAL_HAIR_COLOR)
|
|
#define APPEARANCE_ALL 0xFFFF
|
|
|
|
// Click cooldown
|
|
#define DEFAULT_ATTACK_COOLDOWN 8 //Default timeout for aggressive actions
|
|
#define DEFAULT_QUICK_COOLDOWN 4
|
|
|
|
|
|
#define MIN_SUPPLIED_LAW_NUMBER 15
|
|
#define MAX_SUPPLIED_LAW_NUMBER 50
|
|
|
|
//default item on-mob icons
|
|
#define INV_HEAD_DEF_ICON 'icons/mob/head.dmi'
|
|
#define INV_BACK_DEF_ICON 'icons/mob/back.dmi'
|
|
#define INV_L_HAND_DEF_ICON 'icons/mob/items/lefthand.dmi'
|
|
#define INV_R_HAND_DEF_ICON 'icons/mob/items/righthand.dmi'
|
|
#define INV_W_UNIFORM_DEF_ICON 'icons/mob/uniform.dmi'
|
|
#define INV_ACCESSORIES_DEF_ICON 'icons/mob/ties.dmi'
|
|
#define INV_SUIT_DEF_ICON 'icons/mob/ties.dmi'
|
|
#define INV_SUIT_DEF_ICON 'icons/mob/suit.dmi'
|
|
#define MAX_SUPPLIED_LAW_NUMBER 50
|
|
|
|
// NT's alignment towards the character
|
|
#define COMPANY_LOYAL "Loyal"
|
|
#define COMPANY_SUPPORTATIVE "Supportive"
|
|
#define COMPANY_NEUTRAL "Neutral"
|
|
#define COMPANY_SKEPTICAL "Skeptical"
|
|
#define COMPANY_OPPOSED "Opposed"
|
|
|
|
#define COMPANY_ALIGNMENTS list(COMPANY_LOYAL,COMPANY_SUPPORTATIVE,COMPANY_NEUTRAL,COMPANY_SKEPTICAL,COMPANY_OPPOSED)
|
|
|
|
|
|
// Defines mob sizes, used by lockers and to determine what is considered a small sized mob, etc.
|
|
#define MOB_LARGE 40
|
|
#define MOB_MEDIUM 20
|
|
#define MOB_SMALL 10
|
|
#define MOB_TINY 5
|
|
#define MOB_MINISCULE 1
|
|
|
|
// Gluttony levels.
|
|
#define GLUT_TINY 1 // Eat anything tiny and smaller
|
|
#define GLUT_SMALLER 2 // Eat anything smaller than we are
|
|
#define GLUT_ANYTHING 3 // Eat anything, ever
|
|
|
|
#define BASE_MAX_NUTRITION 400
|
|
#define HUNGER_FACTOR 0.05 // Factor of how fast mob nutrition decreases. Moved here from chemistry define
|
|
|
|
#define TINT_NONE 0
|
|
#define TINT_MODERATE 1
|
|
#define TINT_HEAVY 2
|
|
#define TINT_BLIND 3
|
|
|
|
#define FLASH_PROTECTION_REDUCED -1
|
|
#define FLASH_PROTECTION_NONE 0
|
|
#define FLASH_PROTECTION_MODERATE 1
|
|
#define FLASH_PROTECTION_MAJOR 2
|
|
#define ANIMAL_SPAWN_DELAY round(config.respawn_delay / 6)
|
|
#define DRONE_SPAWN_DELAY round(config.respawn_delay / 3)
|
|
|
|
#define ANIMAL_SPAWN_DELAY round(config.respawn_delay / 6)
|
|
#define DRONE_SPAWN_DELAY round(config.respawn_delay / 3)
|
|
|
|
// Incapacitation flags, used by the mob/proc/incapacitated() proc
|
|
#define INCAPACITATION_RESTRAINED 1
|
|
#define INCAPACITATION_BUCKLED_PARTIALLY 2
|
|
#define INCAPACITATION_BUCKLED_FULLY 4
|
|
#define INCAPACITATION_DISABLED 8
|
|
|
|
#define INCAPACITATION_DEFAULT (INCAPACITATION_RESTRAINED|INCAPACITATION_BUCKLED_FULLY|INCAPACITATION_DISABLED)
|
|
#define INCAPACITATION_ALL (INCAPACITATION_RESTRAINED|INCAPACITATION_BUCKLED_PARTIALLY|INCAPACITATION_BUCKLED_FULLY|INCAPACITATION_DISABLED)
|
|
|
|
#define MOB_PULL_NONE 0
|
|
#define MOB_PULL_SMALLER 1
|
|
#define MOB_PULL_SAME 2
|
|
#define MOB_PULL_LARGER 3
|
|
|
|
//Time of Death constants
|
|
//Used with a list in preference datums to track times of death
|
|
#define CREW "crew" //Used for crewmembers, AI, cyborgs, nymphs, antags
|
|
#define ANIMAL "animal" //Used for mice and any other simple animals
|
|
#define MINISYNTH "minisynth"//Used for drones and pAIs
|
|
|
|
#define RESPAWN_ANIMAL 3000
|
|
#define RESPAWN_MINISYNTH 6000
|