Commit graph

11 commits

Author SHA1 Message Date
Sally Coolatta
f0b9e0e415 Default to first usable skin instead of 0, I_Error if none are usable 2021-04-25 16:38:33 -04:00
Sally Coolatta
8278e621fb Removed skin->availability
Locked skins now are a specific unlockable type, instead of being tied to the skin's properties.

This has plagued custom gamedata since 2.2 launch. It's extremely obnoxious having to set aside random numbers as dummy unlockables just to ensure that Amy Fang & Metal are unlocked from the start in a custom map pack.

Other changes made to accommodate this:
 - R_GetSkinAvailabilities is now created from the list of unlockables set to skin type. (1st skin unlockable defined is (1), 2nd skin unlockable defined is (1 << 1), etc...)
- The "Added skin x" print shows up when loading addons but not at all for the base game, because the previous behavior of hiding based on if the skin was locked would now require iterating unlockables, which felt wrong to do during that stage of the loading process
 - I noticed in my test wad that Sonic&Tails would give you Sonic&Sonic out if Tails was locked. I fixed that by making both skins required to show the character select option.

Mods that reserved empty dummy unlockables for Amy Fang and Metal won't have to do anything. Mods that wanted to re-lock them behind different requirements will have to update, but in the future they will not have to be in specific slots. Additionally, now Sonic Tails and Knuckles can also be locked for mods.
2021-04-25 07:18:32 -04:00
katsy
d999e436f1 GETFLAG 2020-12-14 20:23:24 -05:00
James R
75c5c8ba6a Add missing *individual* skin flags 2020-11-28 02:22:08 -08:00
lachwright
a78a0071f2 Save changes made to the bot's skin, and display it properly in save select 2020-09-17 19:00:49 +09:30
Steel Titanium
0d48d4c833 WIP: Remove support for DOS
WIP because I don't know if this wording is right for the error.
2020-07-25 18:55:51 -04:00
kaysrishaq
0f9e3554e2 various color fixes 2020-07-12 07:39:52 -04:00
SwitchKaze
b37c73b008 Make colors UINT16, increase color freeslots to 1024 2020-05-23 19:35:36 -05:00
James R
673a842043 Merge remote-tracking branch 'origin/next' into SF_NONIGHTSSUPER 2020-04-09 16:47:52 -07:00
Monster Iestyn
e81ef824d6 Set the "spritename" variable within R_AddSingleSpriteDef rather than externally to it, since R_InstallSpriteLump is the only place it gets used anyway
This way we don't have to make it some extern in order for r_skins.c to use it
2020-03-08 19:51:18 +00:00
Monster Iestyn
a67dbfff54 Create r_skins.c/.h, to contain skins code formerly in r_things.c/h 2020-03-08 19:32:07 +00:00