nexus/flag.h

65 lines
3.4 KiB
C
Raw Permalink Normal View History

2010-12-02 12:17:54 +11:00
#include "defs.h"
// functions
altflagval_t *addaltval(flag_t *f, enum FLAG id, int val1, int val2, int val3, /*@null@*/ char *text);
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
void addcondition(flag_t *f, enum FLAGCONDITION fc, int chance);
flag_t *addflag(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, /*@null@*/ char *text);
flag_t *addflagifneeded(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, /*@null@*/ char *text);
flag_t *addtempflag(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, /*@null@*/ char *text, int timeleft);
flag_t *addflag_real(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, /*@null@*/ char *text, int lifetime, int known, long obfromid);
2011-02-01 06:16:13 +11:00
flagpile_t *addflagpile(lifeform_t *owner, object_t *o);
- [+] add more vrare vaults to reduce likelihood of cockatrice lair! - [+] bazaar - [+] money vault hsould be vrare - [+] so should traproom - [+] rename giant rat to "dire rat" - [+] don't show anything other than object description and throwing for unknown tech - [+] shouldn't be able to rest in a tent if it's not known! - [+] eyebat corpse increase maxmp? - [+] blessed missiles should nearly always hit undead * [+] too easy to dodge thrown missiles? - [+] spell and wand of culinary abundance - [+] if a carnivorous animal kills you: "Eaten by a xxx" * [+] bug: stairsperlev is only ever used in making DUNGEONS. generecise this ?? - [+] safetorest - should ignore monsters feigning death - [+] broken nose should reduce smell range - [+] fresh and stale bread should be interchangable in cooking - [+] make scroll of permenance act on you, not your objects - [+] tweak object rarity yet agian... - [+] bug: hole in roof above player start pos is immediately destroyed. - [+] change pickaxe to be like resting - [+] wait first, then if not interrupted, do the dig. - [+] add cell->hp, celltype->hp. around 100. - [+] f_digging, x, y, digperturn - [+] interrupt() will stop this. - [+] each turn, lower hp of cell by 1. - [+] make wlaking bakwards take less time based on athletics skill!!! - [+] at adept, takes no extra time? - [+] better racial display - [+] ? for extra info. - [+] hitdice - [+] general attribs (str etc) - [+] don't show description until you press '?' - [+] addbonustext(flagpile, f_BONDESC, "asdffas") - to avoid index issues - [+] remove VULNS from "effects" unless temporary - [+] isresistantto() etc need to have "int onlytemp" - [+] remove VULNS from manual BONTEXT flags - [+] CRASH IN DTVULN CODE!! - [+] limit '?r' display ?? - [+] what to show - [+] show races you have encountered - [+] show races you know about through Lore (adept level) - [+] show playable races????? - [+] structs - [+] race->encountered - [+] need to save this. - [+] make EFFECTS only show TEMPORARY effects or ones which don't come from race? - [+] automate bondesc/pendesc based on flags! - [+] vulnarabilities / resist / immun - [+] vision range!! (visrangemod) - [+] size? restricted armour. - [+] stayinroom - [+] f_humanoid (can use weapons) - [+] tamable - [+] seeindark - [+] caneatraw - [+] enhancesmell - [+] caneatraw - [+] vegeatrian - [+] cernivore - [+] fastmetab - [+] startskill - [+] tremorsense - [+] silentmove - [+] deaf - [+] flying / levitating - [+] awareness - [+] nocturnal / diurnal - [+] heavyblow - [+] packattack - [+] dodges - [+] autocreateob - [+] MPMOD - [+] HPMOD - [+] MEDITATES - [+] PHOOTMEM - [+] canwill "Spells: xx, x, x, x" - [+] spells: - [+] animate stone - "power" walls turn into stone golems - [+] implement spell - [+] golem - [+] r_golemstone - [+] knockback attack - [+] high str - [+] fists - [+] corpsetype and iunsummonob = boulder - [+] spell power modification - subtract spell level. - [+] when i go down a drain, make sure the new map links to THE DRAIN I WENT DOWN. not some otehr one. - [+] some monsters shouldn't sleep! add new flag: f_nosleep - [+] make spanner help disarm traps!
2011-12-04 09:33:37 +11:00
int canbemadepermenant(enum FLAG id);
void changeflagtext(flag_t *f, char *newtext);
/*
- [+] CRASH in killflag() - [+] symptoms - [+] often happens right after creating a new map (ie. trigger it through a gate spell) - [+] bug in createriver(). fixed. - [+] somehow casting GATE is causing object flagpiles on the PLAYER's map to become corrupted. - [+] "the young hawk wakes up" CRASH, flagpile corrupt on stone. - [+] object itself seems okay. - [+] o->flags is becoming corrupt!!! - [+] so all its flags are becoming corrupt (id = massive number, next = fffff) - [+] traceback: - [+] #0 0x0000000100081188 in killflag (f=0x103321090) at flag.c:815 #1 0x0000000100081b3a in timeeffectsflag (f=0x103321090, howlong=1) at flag.c:1075 #2 0x00000001000825f8 in timeeffectsflags (fp=0x1038e0600) at flag.c:1302 #3 0x0000000100129b01 in timeeffectsob (o=0x1036e2460) at objects.c:11877 #4 0x0000000100005114 in timeeffectsworld (map=0x102aa1a00, updategametime=-1) at nexus.c:1685 #5 0x0000000100003a28 in donextturn (map=0x102aa1a00) at nexus.c:952 #6 0x00000001000029b1 in main (argc=1, argv=0x7fff5fbff848) at nexus.c:525 - [+] try this: in timeeffectsflags on objects, check PREVIOUS object's flagpile. - [+] try this: add checkflagS() after updatefpindex - [+] NOT happening during timeeffectsob(). - [+] compile with optimisation................. - [+] hapepning in createmap. but objects on the PLAYER's map are being corrupted, not the new one. - [+] happening in addrandomthing() - [+] happening in addmonster(). - [+] lf = addmonster(c, R_RANDOM, NULL, B_TRUE, 1, B_TRUE, nadded); - [+] (glowbug was created) - [+] happening in addlf() - [+] glowbug again!! to do with light recalc ?? - [+] happening in setrace() - [+] happening while inheriting F_AWARENESS. have double checked to confirm this! - [+] in HASLOS????!! - [+] addflag->flagcausesloscalc, so haslos for all on the map. problem happens when we call haslos() for the lf getting F_AWARENESS added. - [+] is the problem that doing a los recalc breaks when we are still missing half our racial flags ? - [+] QUICK FIX: - [+] dont recalc los for any lf where born = 0. just set nlos to 0 - [+] and manually recalc los just before returning from addlf - [+] put sawgrsaas back to being common, not frequent - [+] is this finally fixed now? i think so!! - [+] if so, remove calls to "checkallflags" and most calls to checkflags() - [+] remove agility bonuses for weapon acc. now comes just from skill and from agi scaling on weapons. - [+] maybe difference in hit dice is a bad way to determine shieldblock difficulty. - [+] ...because the player rapidly gets higher than all other monsters on their dungeonlev. - [+] maybe just use monster's hitdice, ignore players. - [+] bug: abilities costing no stamina? - [+] in addmap, i am not initialising enough nextmap[]s - [+] flag.c bug: don't need to set player->losdirty when recalcing light on a different map - [+] lfs with F_DOESNTMOVE weren't attacking - [+] manuals are starting off known. why?? - [+] they don't appear in knowledge, so don't appear to have a hiddenname at all. - [+] make magical barriers block view. - [+] when describing armour / shield penalty, say - [+] "will lower your accuracy by 1" - [+] instead of - [+] "will lower your accuracy by 5%" - [+] make firstaid skill incrase your hp per level - [+] high agility seems to be giving a MASSIVE accuracy increase when higher than weapon's stat. - [+] maybe remove or reduce AGI acc bonuses. - [+] sack started off containing a FOOD VENDOR!@# - [+] size check obviously isn't working. - [+] need "obfits" in givestartobs!! - [+] hitting ESC when firing with F doesn't cancel.f - [+] hunter should start with fur cloak - [+] spellbooks are too cheap ($12) - [+] remove'p' for lockpick- just operate the lockpickobject. - [+] removed, - [+] ...but now tha tI've removed 'p' for picklocks, can i still use 'o' on a dagger or similar? - [+] NO - [+] maybe turn "pick lock" into a still - [+] how do you gain this? level 1 lockpicking - [+] then make lockpicks etc non-operable - [+] fix crash when drunk lfs take damage - [+] sleeping powder costs nothing - [+] memleaks??? 700mb usage!! - [+] valgrind - [+] found a memleak problem: definitely lost: 10,719,039 bytes in 11,420 blocks - [+] not killing flags when we kill an object!!!!! fixed now. - [+] memory usage is now ticking up heaps more slowly. - [+] investigate further with valgrind again..... - [+] when summoning, prefer cells for which the player has los. - [+] make jammed doors harder to open. - [+] no forcing a door open on your first go. should be: - [+] the door is jammed! - [+] you force it open. - [+] used f_jammed v1 = known
2011-12-17 06:54:08 +11:00
int fpisbad(flagpile_t *fp);
void checkflagpile(flagpile_t *fp);
void checkflagpile_maplfs(map_t *m);
void checkflagpile_mapobs(map_t *m);
*/
int copyflag(flagpile_t *dst, flagpile_t *src, enum FLAG id);
2011-02-01 06:16:13 +11:00
void copyflags(flagpile_t *dst, flagpile_t *src, int lifetime);
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
int countflags(flagpile_t *fp);
int countflagsofid(flagpile_t *fp, enum FLAG fid );
void dumpflags(flagpile_t *fp);
//flag_t *flag_bsearch(flagpile_t *fp, int id, int *iterp);
flag_t *flag_hsearch(flagpile_t *fp, int id, int *iterp);
int flagcausesinterrupt(flag_t *f, enum GAINORLOSS gol);
int flagcausesloscalc(enum FLAG fid);
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
int flagcausesredraw(lifeform_t *lf, enum FLAG fid);
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
int flagcausesstatredraw(lifeform_t *lf, enum FLAG fid);
- [+] press ] then \ - CRASH. - [+] if sound is behind walls: - [+] you hear a muffled explosion - [+] int canhear() needs one more optional argument: &numwallspassed - [+] if supplied, fill it in. - [+] in noise(), check numwallspassed. if there were any, then say 'muffled'. or maybe if more than 2? play around with this. - [+] listen skill should also give more info about NON monster sounds - [+] ie. direction, distance. - [+] set user->changinglev when CHECKING stairs in the same way as when we use them. - [+] monk abil - iron fist - use all remaining stamina as damage + knockback * [+] HITCONFER - this should only work if you were attacked through a BITE or CLAW etc. - [+] bug... werewolves etc not attacking properly after shapehifting - [+] some tech/tools should be usable with hands (ie. watch). f_operwithouthands - [+] werewolves sohuld keep f_hitconfer after shapeshifting - [+] done - [+] summoned creatures from ai should never attack their masters!!! - [+] only the PLAYER can be infected by a werewolf? or only HUMANS ? - [+] when a werewolf changes to animal form, no longer hide true race as 'human' - [+] lycanthropy? - [+] how to get it: - [+] drink were-xxx blood (->potion of lycanthropy, never appears randomly) - [+] bitten by a lycanthrope (chance) with hitconfer and fail a con check - [+] change f_lycanthrope so text = racename. - [+] effects when you get it: - [+] right away, add diseased with lycanthropy. incubatino infinite ? - [+] if you are incubating lycanthropy, you always change at the full moon (and get rage, and lose control). - [+] at this point, complete the incubation and... - [+] add f_hatesall - [+] lose control for a while - [+] after you change back the first time, you can change at will. (but there is a risk each time of losing control) - [+] player regains control - [+] remove aicontrolled, hatesall, rage - [+] actually add f_lycanthrope, text=xxx, v0=4 - [+] when f_lycanthrope v0 drops to 0 or less... - [+] canwill shapeshift with race:xxx - [+] how to remove it - [+] remove curse scroll - [+] drink holy water - [+] these will: - [+] cure any incubating curse - [+] cure any f_poisoned curse - [+] cure lycanthropy, and any flags FROMLYCANTHROPY - [+] other effect - [+] wont/cant walk into holy circle? - [+] holy circle hurts you - [+] shouldn't be able to get critical hits on you (ie. injuries) if you ahve heavenly armour - [+] bug in f_poisoned text. i think i've fixed this now. Died on level 2 of the dungeon. Killed by venom poisoning from 5-10 - [+] donated objects count towards xp! - [+] -50% of value if not known. - [+] -25% of value if not id'd - [+] donating objects will anger felix
2012-07-11 14:10:21 +10:00
int flagretainedduringpoly(enum FLAG fid);
2011-02-01 06:16:13 +11:00
int flagstacks(enum FLAG fid);
- [+] weakness spell should half melee damage. - [+] quaffed a potion of polymorph self... and nothing happened! - [+] only killing undead should please the god of life, not just killing anything evil - [+] klikirak shouldn't get angry when you take cold damage! - [+] fire sohuld convert flammable celltypes to another type: - [+] wood -> stone floor with pit - [+] carpet > stone - [+] increase flamepillar range - [+] warning before killing firebug on wood/carpet, if wisdom is at_high or above, and animal lore is high enough. - [+] make f_twohanded only apply up to a given lf size. - [+] implement - [+] then add "istwohandedfor(wep, lf)" - [+] then fix up ob defs in data.c - [+] unnatural growth/shrinkage spells should be temporary too (like potion) - [+] random polymorph code - [+] stay at the same TR, or one higher/lower! (same for player random polymorph) - [+] elephant - friendly to mammoans - [+] mammoth - [+] pixie (then pixie, dryad sprite = sylvan / fae) - [+] naiad / nixie - [+] blue 'n' - [+] low power charm to lure into water - [+] dagger/javelin - [+] throwing net - [+] resist magic 25% - [+] droid - zapper - [+] hoverscout (levitates, summons monsters) - [+] skellion - floating flaming skull, scream attack, flame melee - [+] fire primality should cast flame burst. - [+] don't modify monster hp based on fitness. - [+] storm primality / wind primality - [+] very fast - [+] 2 attacks - 1d5 each time. (pummel with debris / zapper) - [+] permenant windshield - [+] lesser: - [+] lightningbolt (lesser, 2d6) - [+] sleetstorm (lesser, 1-2 cold and slow movement) - [+] greater - [+] chain lightning (greater, 3d6) - [+] hailstorm (greater, 1d6 cold and 1d4-5d4 depending on power) - [+] naiad (water sprite) - 'n' -blue - [+] good - [+] aquatic - [+] water spirit - [+] charm spell - [+] ling parasite - green 'x' - [+] turns one corpse into a zombie (dies in the process) - [+] add onion object. - [+] roc - [+] "crystal cur" - canine. only bashing works - [+] gems for corpses. - [+] bug: monsters not using spells. fixed. - [+] test NOSPELLS bug with rapidivy - [+] test low IQ spells with storm primality - [+] make hitdice be d8 rather than d4 - [+] change F_HITDICE - [+] add constant HITDIESIDES - [+] redo all definitions in data.c
2012-03-11 12:39:33 +11:00
int flagtomaxhp(flag_t *f);
cell_t *getflagpilelocation(flagpile_t *fp);
int getflags(flagpile_t *fp, flag_t **retflag, int *nretflags, ... );
int getflaghash(enum FLAG fid);
- [+] most monsters which covet food should have snatch - so that you can just drop food for them. - [+] when looking for remote obs, DO include adjacent cells with lfs, if we have the snatch ability. - [+] some long thin levels (80 x 12 ?) - [+] fix code to remove useless doors. - [+] 0 pairs of dirs with empty cells = change door to wall - [+] pick an adjacent empty cell - [+] floodfill the 8 cells around the door. - [+] start with adj cell - [+] can't go more than 1 cell away from door - [+] solid cells or doors will stop movement - [+] if no unfilled cells around the door, bad. - [+] new way of fixing unconnected levels - portal! - [+] pick one spot in each section then place a portal there. - [+] dying should cure poison - [+] tweaks to attack text - [+] floor tile effecst - [+] absorbancy - ie. carpet should absorb water. - [+] converyors - [+] only walkable sometime (crushers?) - [+] in tombstone, show "eaten by Rattus", not "eaten by a rattus" - [+] god of nature should like eating animals all the time, not just when hungry (makes piety gain easier) - [+] announce when eyes are protected from a spellcloud - [+] klikirak should like setting off fire traps. - [+] floodfill() should follow portals to the same level. - [+] show >1 skillpoints in green on status bar - [+] bug: gods are apeparing behind you. - [+] bug in getrandomadjcell - [+] gods' planeshift spells failing? might be fixed now. using getrandomroomcell instead of getrandomcell. - [+] increaes damage dealt by smite evil/good - [+] lightning javelins shouldn't be stackable - [+] monsters not firing ranged weapons! - [+] they just walk back and forth - [+] bug with how i was calling haslof() for cells other than where the mosnter was (in getdiraway()) - [+] turn undead should only work if caster level*2 is >= monster level fullblock basics: - [+] penalties - [+] lowers visrange to 1 - [+] huge attack penalties - [+] huge evasion penalties - [+] vhigh chance of all ranged damage going to shield instead. - [+] buckler = 75 (small) - [+] shield = 80 - [+] large shield = 85 - [+] tower = 90 - [+] plus shield skill*2 - [+] use check_shield_block in all spell effects - [+] this checks whether player is shieldblocoking (or evades??) - [+] then applies damage appropriatly. - [+] new ability; - [+] stopped by: - [+] losing or unequipping the shield - [+] being interrupted - [+] casting a spell or using an ability - [+] exotic weapons should cost more. - [+] maybe prevent prayer until gods have been pleased enough ? - [+] while you're not worshipping anyone, piety gain is x4. - [+] once first one hits 'pleased', they will appear and offer you a place - [+] advantge to this is that you get a gift - [+] picking up new gold should please felix...... - [+] you shoudl only be able to sacrifice untouched gold. this pleases felix double as much as grabbing it. - [+] gods sohuld appear "in a cloud of ..." - [+] bjorn - blood - [+] klik - fire - [+] lumara - bright light
2012-11-09 22:50:52 +11:00
char *getflagtext(flagpile_t *fp, enum FLAG fid);
- [+] walking on glowing moss sohuld damage it. - [+] make dagger stronger than combat knife (but combat knife is faster) - [+] optimise makefile. - [+] swapplaces message not appearing. - [+] fix exploit for dizziness with 'A' - [+] every time we ask for a direction, use askdirection(prompt). make this do dizziness check. - [+] no shieldblocking or dodging if you have no stamina. - [+] object rarity bugs - [+] i'm finding way too many books! might be fixed now... ? - [+] never finding wands - [+] added debugging to see if there is a problem with wands.... - [+] adjust footstep sound based on material - [+] carpet = soft - [+] stone = normal - [+] tiles = loud - [+] in @e, "you ar etipsy" should also talk about damage resistance. - [+] don't show starting abilities if you are a diety. - [+] don't say 'xx walks out of view' if they didn't move on purpose - [+] CRASH - summon weapon then drop the energy blade. * [+] CRASH when fumbling attack using energy blade. - [+] fighter with wisdom 31. novice perception skill. noticied teleport trap right in front of me. chances? - [+] maybe make it you can never detect anything further away than your perception skill. - [+] fix bug in geteffecttime() - [+] announce starting spells at beginning of game - [+] in skill help, highlight your current level. Maybe: "At Novice level>>> Unskilled weapons etc..." - [+] inept level lore shouldn't show "Adept Stealth" as a strength - [+] when you / then move over a cell with footprints short "Dirt (with human footprints)" - [+] or "Dirt (with xxx foorprints leading east) - [+] typo in killer text - an vs a - [+] get over here! should give you enough time to attack ? - [+] felix prayer should remove impassable objects. - [+] robots shoudl have big penalties to getting up checks. slip, fall, etc. - [+] fix bug when falling off a fence. - [+] BUG: no los when i climb on top of a wooden fence. why? - [+] F_BLOCKSVIEW needs new option: v1 = true means dont block if you are standing on it * [+] engineering / construction skill - replaces 'traps' - [+] fixed bug where you couldn't rest when you pet was visible. - [+] bug: aigetlastknownpos populating lastx & lasty with different info from the the cell returned. - [+] this has happening when following the direction of a scent. - [+] remove display of "xx throws xxx towards you" if you can't see the source and something is in the way. - [+] druid should alway sbe able to swap with plants. - [+] peaceful check should do this - [+] try agian... * [+] problem- create water can be used instead of soften earth ??? - [+] detect life should help with checking stairs. - [+] pentagrams should heal the undead. - [+] ekrub - don't et you sacrifice the flower that appears. * [+] when doing check for piety on eating animals - [+] don't auto give druid short blade skill due to sickle - [+] soften earth on boulder... turn it to mud - [+] adept psychology - receive change for gems. - [+] BUG: announceflagloss is never happening. - [+] new nature spell - absorb wood - [+] clank - robot, chomp to steal health, self destruct - [+] new tech - [+] l0 - [+] chewing gum (jam doors with it) - this should be food though. - [+] plants shoudl HELP druid from level 4 onwards - [+] clean up skill ability code - [+] automate skill descriptions based on skillwills "you gain the 'xxx' ability" - [+] auto-learn spells from initial spellbook, rather than having to read it manually - [+] finding rings of unholiness everywhere. - [+] because it's the only rare ring! - [+] fixed by making ALL rings be uncommon - [+] first time you slip on something, suggest using 's' - [+] sewing / metalwork: get resize and enhance earlier. - [+] bug with engineering seeing through one wall!s - [+] rogue/knifedancer / blademaster - throwing, extra skill with small blades. starts with extra knives. - [+] replace all SUBJOBS with plain regular JOBs - [+] fix "needobforstaff" for wizards! - [+] sewer should have mossy rock floor. slippery. - [+] new specialist classes: - [+] rogue/assassin (no stealing, no traps, lockpicking, better stealth+backstab, poison knives) - [+] minor healing spell is too powerful. should do 5-10hp max. - [+] reveal hidden is not powerful enough for l4. move to l2. - [+] reduce effects of stench as TR gets higher - [+] lumara should accept sacrifice of anything magic. - [+] oil lamp not making my viison longer! (on dlev11) - [+] just describe f_produceslight in io.c - [+] with no evasion skill, agi does way less for EV. - [+] fungus clouds should be in 1 radius, non orthogonal - [+] try putting monster zoo back in? - [+] STILL bugs detecting trapped doors ages away! - [+] detected one 8 away, perception novice! - [+] when a monster necromancer is made, i'm prompted for spell school!!! - [+] new mushroom: greycap. looks like a miniature snowy mountain. grants cold resistance - [+] shop opening hours - [+] F_OPENHOURS - [+] v0 = start (inclusive) - [+] v1 = end (inclusive) - [+] v2 = sayphrase - [+] SP_CLOSEDTILMORN (come back in the morning) - [+] SP_CLOSEDTILNIGHT (come back tonight) - [+] SP_CLOSEDTILHOUR (come back after x oclock!) - [+] make shops only be open during the day. - [+] make some temples only be open at night (eg. hecta)
2012-10-15 13:15:36 +11:00
void getmaxflags(flagpile_t *fp, int id, int *max0, int *max1, int *max2);
flag_t *getrandomflag(flagpile_t *fp, enum FLAG fid);
2010-12-02 12:17:54 +11:00
flag_t *hasflag(flagpile_t *fp, int id);
2011-02-01 06:16:13 +11:00
flag_t *hasflagknown(flagpile_t *fp, int id);
flag_t *hasflag_real(flagpile_t *fp, int id, int wantknown, flag_t *exception, int lifetimeexception);
flag_t *hasflagval(flagpile_t *fp, int id, int val1, int val2, int val3, /*@null@*/ char *text);
flag_t *hasflagvalknown(flagpile_t *fp, int id, int val1, int val2, int val3, /*@null@*/ char *text);
flag_t *hasflagval_real(flagpile_t *fp, int id, int val1, int val2, int val3, /*@null@*/ char *text, int wantknown, int lifetimeexception);
flag_t *incflag(flagpile_t *fp, enum FLAG fid, int val1, int val2, int val3);
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
int istransitoryflag(flag_t *f);
2011-03-04 12:22:36 +11:00
int killflagsofid(flagpile_t *fp, enum FLAG fid);
int real_killflagsofid(flagpile_t *fp, enum FLAG fid, int wantannounce);
int killflagsofval(int count, flagpile_t *fp, enum FLAG fid, int v0, int v1, int v2, int lifetime, long obfrom);
2010-12-02 12:17:54 +11:00
void killflag(flag_t *f);
void real_killflag(flag_t *f, int wantannounce);
2010-12-02 12:17:54 +11:00
void killflagpile(flagpile_t *fp);
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
int killtransitoryflags(flagpile_t *fp, enum FLAG fid);
int killtransitoryflagvals(flagpile_t *fp, enum FLAG fid, int val1, int val2, int val3, /*@null@*/ char *text);
2011-02-01 06:16:13 +11:00
void makeflagknown(flagpile_t *fp);
* [+] F_prone if you're knocked down - [+] make sheilds very good against projectiles - [+] make smoke just REDUCE vision, not block it. - [+] noncorporeal should stop grabs! * [+] don't say 'a javelin is damaged' when you throw it, just apply the damge - [+] increase damage bonus with every lore level. +10% each time (ie. up to 50% at top) * [+] give accuracy + critical bonus for lore levles too - [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle] - [+] Show Pain on botl. * [+] more staves - [+] low hitpoint warning for pets (or make them shriek, whine, etc) - [+] CRITKNOCKDOWN * [+] FINISH GRIZZLY - [+] undead should be immune to poison!! - [+] make code to auto add flags to undead. - [+] if you ever move a door (ie. airblast), automatically open it. - [+] young wolf shouldn't be able to open a door! * [+] You throw a dart at the carpet snake. Your dart misses you.--More-- - [+] no sprinting while burdneed - [+] blood should be drawn BELOW stairs - [+] weilded torch should do 1d4 fire damage (counts as a club) * [+] The skeleton touches a leather belt then recoils in pain!The skeleton drops a blessed leather belt.The skeleton puts on a leather belt. - [+] don't show "you can cast it at power level xxx" for abilities * [+] more item randomising - [+] make grey ooze splatter into acid - [+] "the vine grabs you" if you walk onto an entangling vine. - [+] don't start monsters within player's los - [+] properly randomise sticks to snakes - [+] stirge - [+] leech (like stirge but can charge/leap, and slightly more hp / damage) - [+] treesnake - [+] constrictor - [+] cobra - [+] stickes to snakes - make caster's weapon revert. - [+] A something comes into view. - [+] is invisibility code working properly when you see someone use the invis spell? - [+] don't include cosmetic objects in 'you see xxx' * [+] monsters: don't use spells if you don't have lof. - [+] pets not following around corners if you move diagonally. fixed a little. - [+] summon small animals (2-3 x SZ_SMALL) * [+] jet of water - [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc) - [+] lightning storm (lightbning everyone within los, and more damage) - [+] summon large animals (SZ_LARGE, horse, bear etc)
2011-05-03 17:34:07 +10:00
int modcounter(flagpile_t *fp, int amt);
flag_t *modflag(flagpile_t *fp, enum FLAG fid, int val1, int val2, int val3, /*@null@*/ char *text);
- [+] griddler didnt start with trident? - [+] it DID, but it dropped it cuase it was hot. - [+] griddler should be immune to redhot! (testing shows it currently isn't) - [+] once prisoners give you a reward, they shouldn't be allies anymore (ie shouldn't follow you up/down stairs) - [+] portal to realm of gods hsouldn't work until you have a godstone. - [+] why did potion of oil explode when i threw it? - [+] for unique monsters, instead of "jimbo's armour protects it", use "jimbo's armour protects him" - [+] use f_gender - [+] this replaces F_GODOF. - [+] change gods to use this too. - [+] change cloak of shadows - only work if max vis range is low ? - [+] monsters can't see you if they are >=3 away - [+] F_SHADOWED - [+] more amulets - [+] of the traveller (go to a much deeper level or branch when you put it on. go back when you take it off) - [+] implement - [+] usually start cursed - [+] boost piety gain - [+] soul feasting - [+] acrobatics (tumble/jump) - [+] choking - [+] first add f_nobreath - [+] doesn't work if you don't need to breath - [+] hydra blood poisonous - [+] handle "linkrace:xxx splash of blood" - [+] make bleed() use this. - [+] add f_venomblood to r_hydra (and others?) - [+] make filling potions from blood check for f_linkrace->f_venomousblood - [+] maybe handle this more elegantly. - [+] add f_bloodfillob to blood objects (inherit from lf) - [+] fine, but what about addobsinradius? make it populate retobs!!! - [+] change f_venomblood to f_bloodfillob->ot_pot_poison - [+] remove "linkrace:xxx" code from objects.c and from bleed() - [+] flashbang shouldnt affect user (you would look away) - [+] add F_THROWNBY to objects when you throw them. - [+] stop initial revolvers from starting with 'a rubber bullet' - [+] dry ice grenade - csats "snapfreeze" - [+] needs f_spellcloudondeath - [+] implement - [+] spiked club - [+] The hawk critically claws your hands. Your ! - [+] fixed. - [+] need another way to unlock chests - [+] bash them - [+] if it is trapped, high chance that the trap will go off - [+] if you attack something which is locked, it has a small chance of becoming unlocked - [+] rnd(1,your_str) must be > lockdiff! - [+] different unarmed attack verbs for monk - [+] javelin of lightning - [+] when you throw it: - [+] dothrow() calls spelleffects(LTBOLT) - [+] then uses up one charge - [+] if charges are left: - [+] reforms in your hands - [+] otherwise it turns into a normal javelin - [+] shovel - [+] jackhammer (like pickaxe but faster)
2012-04-14 08:52:35 +10:00
void revealflagob(lifeform_t *lf, flag_t *f);
void sumflags(flagpile_t *fp, enum FLAG id, int *val0, int *val1, int *val2);
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
void timeeffectsflag(flag_t *f, int howlong);
2011-02-01 06:16:13 +11:00
void timeeffectsflags(flagpile_t *fp);
//void updatefpindex(flagpile_t *fp);