blankart/src/hardware
Monster Iestyn 3d07915be2 Merge branch 'vada_flickies' into 'master'
Hardcoded VAda Flickies

Many thanks to MI for his help, even if he has sinful opinions on what the collection of creatures should be called. ;P

* Flickies are now handled via A_FlickySpawn instead of hardcoded in P_KillMobj, so there can be mobjtypes with MF_ENEMY which don't create flickies, or other mechanisms which can much easier.
* Added map header "FlickyList" (aka "AnimalList") parameter, which can either be set to:
    * A species (eg: "Rabbit" or "Bluebird", amongst 17 currently supported types in dehacked.c table FLICKYTYPES - including the seed from Sonic CD, which isn't limited to 'soniccd on' in the console now)
    * Any valid mobjtype that isn't MT_NULL (eg: "MT_FLICKY_GHOST")
    * A comma-seperated list of either of the above, up to 64 entries long (eg: "Cow,MT_FLICKY_SPIDER,Chicken")
    * "All" - sets behind-the-scenes stuff to use every 'normal' type of flicky in FLICKYTYPES (a distinction which can be utilised to hide secret level flickies where they wouldn't be appropriate for the main game)
    * "Demo" - sets behind-the-scenes stuff to use the five flickies closest to the species used in the game's long history.
    * "None" - prevents any flickies from spawning.

"Demo" is functionally the default value if you don't include a FlickyList parameter in the header at all.

Of note, a bunch of functions are now created:
* A_FlickySpawn - spawns flicky.
* A_FlickyAim - aims for area near target, but not directly on them - turns around when hitting wall
* A_FlickyFly -  flies/swims around target (calls A_FlickyAim)
* A_FlickySoar - hacky alternate fly (calls A_FlickyAim)
* A_FlickyCoast - slowing down before going off again
* A_FlickyHop - fracunit-scale precision for A_BunnyHop
* A_FlickyFlounder - A_FlickyHop with randomisation
* A_FlickyCheck - State-setter for falling, or being on-ground
* A_FlickyHeightCheck - State-setter for falling, or being below a certain height relative to target
* A_FlickyFlutter - A_FlickyCheck, but with a slow fall/movement (calls A_FlickyCheck and A_FlickyAim)

I don't need to enumerate the object types and states that have been added, do I?

Oh yeah, I also made it so get_mobjtype's failure value was MT_NULL and prohibited SOC from editing the properties of it to compensate.

IN ADDITION: Killed "soniccd" console command, since it made things more complicated and honestly being able to specify Sonic CD seeds in the level header is a better option.

See merge request !60
2017-01-08 17:36:25 -05:00
..
r_minigl SRB2 2.1 release 2014-03-15 13:11:35 -04:00
r_opengl NULL checks 2016-06-13 10:07:10 -04:00
s_ds3d change SDL into HAVE_SDL 2014-07-25 19:10:24 -04:00
s_fmod change SDL into HAVE_SDL 2014-07-25 19:10:24 -04:00
s_openal MSVC: fixed up MSVC project 2016-05-21 23:53:04 -04:00
hw3dsdrv.h change SDL into HAVE_SDL 2014-07-25 19:10:24 -04:00
hw3sound.c *_Random is now *_RandomByte. 2016-03-29 16:27:55 -07:00
hw3sound.h SRB2 2.1 release 2014-03-15 13:11:35 -04:00
hw_bsp.c SRB2 2.1 release 2014-03-15 13:11:35 -04:00
hw_cache.c Fix hardware / r_opengl warnings. 2014-11-02 01:31:38 -04:00
hw_data.h change SDL into HAVE_SDL 2014-07-25 19:10:24 -04:00
hw_defs.h whitespace cleanup 2016-01-21 13:53:21 -05:00
hw_dll.h added printf checks to hardware's I_Error 2016-06-12 16:08:48 -04:00
hw_draw.c Remove pdupx/y and just use sdupx/y for everything, thanks Inuyasha 2016-11-16 12:10:56 +00:00
hw_drv.h Virtual resolutions in OpenGL 2014-11-13 18:06:38 -06:00
hw_glide.h SRB2 2.1 release 2014-03-15 13:11:35 -04:00
hw_glob.h Well, we don't need "experimental" slopes anymore either 2016-03-09 01:09:21 -08:00
hw_light.c * Ported in all of the Flickies from flickiesreduced8.wad except for the Flicker and seed. 2016-12-31 16:55:06 +00:00
hw_light.h SRB2 2.1 release 2014-03-15 13:11:35 -04:00
hw_main.c Merge branch 'public_next' 2017-01-08 16:05:32 +00:00
hw_main.h Disable the corona-related consvars unless ALAM_LIGHTING macro is enabled 2016-04-21 18:50:30 +01:00
hw_md2.c Merge branch 'public_next' 2016-11-06 18:02:12 +00:00
hw_md2.h Attempt loading of an MD2 only once; if we failed then don't bother again 2016-11-03 21:06:23 +00:00
hw_trick.c Redwall sky gone 2014-03-24 17:29:14 +00:00
hws_data.h SRB2 2.1 release 2014-03-15 13:11:35 -04:00