Commit Graph

380 Commits

Author SHA1 Message Date
9839cb4972 Fix sresources_set, now it properly set resource's owner. 2020-07-14 12:43:02 +02:00
f343482bf6 Actually bind _spell_learns in Entity. This fixes spell learning. 2020-07-10 21:21:31 +02:00
4ab7e83956 Removed XPData. 2020-07-10 17:17:15 +02:00
dbc7bde24b Now Entity only has one level property instead of separate class and character levels. Updated notifications accordingly. 2020-07-10 15:24:14 +02:00
ce2d652456 Emit changed signal in EntityResouce in receivec_update, and from_dict. 2020-07-09 11:21:52 +02:00
4b9c18f23c getc_health, and getc_speed now properly return the clientside resources. 2020-07-08 15:21:56 +02:00
b7f8ea8c0e Implement automatic spell learning. Also fix a notification. 2020-06-27 00:17:45 +02:00
59dbd6ceb1 Moved around a few things in Entity's to and from dict. 2020-06-21 00:16:59 +02:00
dd2876d2e2 4.0 compile fix. 2020-06-20 22:36:31 +02:00
1946fd96a4 Use resource's built in changed signal in EntityResource, instead of a custom one. 2020-06-20 16:10:52 +02:00
d3951436bd Removed a few forgotten debug lines. 2020-06-20 15:44:55 +02:00
94e9a2c02e Removed EntityResourceData. Now EntityResources just get duplicated. 2020-06-20 15:26:21 +02:00
54bd0ff16b Don't set the entity data twice if an Entity is deserialized. 2020-06-18 21:32:37 +02:00
f2d35f8b2c Bit more work on fixing the crash. Haven't yet found the culprit. Fortunately it's only crashing sometimes. 2020-06-18 20:47:02 +02:00
4405178f06 (Hopefully) fixed the crash that sometimes occurs on scene changes. 2020-06-18 13:38:23 +02:00
e82dca60f8 Cleaned up the properties exposed inside the inspector for Entity. The properties can be brought back with a debug define. (They do get serialized though!) 2020-06-15 14:47:28 +02:00
712accde54 Properties for cooldowns, and category cooldowns. 2020-06-15 13:40:12 +02:00
924e258d33 Property for datas. 2020-06-15 13:23:43 +02:00
f13dff0dfd Also added a property for spells. 2020-06-15 13:18:07 +02:00
cd0acdf329 Property for serverside craft recipes. 2020-06-15 13:12:50 +02:00
c809b04ba8 Also added properties for all class talents and character talents. 2020-06-15 13:05:14 +02:00
4d7983b6fc Added a property for serverside auras aswell. 2020-06-15 12:47:08 +02:00
f7847dfafc Also added a property for serverside skills. 2020-06-15 12:34:35 +02:00
545bd9b4de Added an PoolIntArray based property for server side states. Also fixed a few states specific properties. 2020-06-15 12:22:39 +02:00
827d67cca0 Added a getter and setter for all EntityResources into Entity. 2020-06-15 11:59:33 +02:00
503481924f Added sgcd, and cgcd properties. 2020-06-15 11:48:22 +02:00
adf0f3b715 Removed the client side notifications from EntityAI. 2020-06-14 16:27:09 +02:00
e94aa02506 Removed the notifications from EntityData. And made Entity call into the AI's notifications instead. 2020-06-14 16:23:37 +02:00
dc452d3937 A few more notifications in Entity are also macro based now. 2020-06-14 10:42:58 +02:00
a1a4a9c7d2 Temporarily added back start_casting into EntityClassData. 2020-06-13 23:17:03 +02:00
316d75d344 Started replacing notification logic in Entity with macros. 2020-06-13 23:13:05 +02:00
548a1155ad Moved a few emit signals into the notification methods. 2020-06-13 22:26:19 +02:00
b4a6153d13 Updated the remaining vmethod signatures. 2020-06-13 22:21:23 +02:00
d3b3ae66a8 Added all of the event handlers to EntityAI. 2020-06-13 22:16:25 +02:00
1b461657d2 Removed the event handlers from EntityClassData as the AI's design have changed since I set it up like this. 2020-06-13 22:03:33 +02:00
fb3a5cde04 Removed the Cooldown and the CategoryCooldown classes. Entity now stores these with a small internal struct. The notifications are not all perfect, but I'm going to rework them a bit in the next few commits, and they will be fixed then. 2020-06-13 21:51:28 +02:00
6a27714c5c Implemented _get, _set for equipment. 2020-06-13 19:49:00 +02:00
af9109d788 Fix duplicate signal. 2020-06-13 18:51:54 +02:00
10bae15bdb SpellCastInfo, EntitySkill, EntityResource, EntityDataContainer, and ItemInstance are now Resources, so Godot will be able to serialize them with Entity. 2020-06-13 18:33:51 +02:00
cb0b8271e1 ItemInstance now also stores stat modifier data like ItemTemplate. 2020-06-07 14:55:39 +02:00
2d2629ba09 Converted the stat modifier related functions in ItemTemplate, and ItemInstance to the new style. Also ItemTemplateStatModifier is now a struct in ItemTemplate. 2020-06-07 00:50:24 +02:00
8ed462ece2 Also reworked how AuraStatAttributes are stored. 2020-06-06 16:55:14 +02:00
6a3716bc42 comvert quite a few more getters/setters to the newer style. 2020-06-05 19:40:53 +02:00
64cb83c543 Remove TalentRowData from config.py, also removed a now unneeded forward declaration. 2020-06-05 17:51:07 +02:00
95c7b29f1f Added 2 const qualifiers. 2020-06-05 14:33:48 +02:00
fdf0163f47 Removed TalentRowData, and reworked CharacterSpec so it's not needed. 2020-06-05 14:03:11 +02:00
55fafecc9d Now Entity has class and character talents. 2020-06-04 12:46:38 +02:00
d063f8da28 Rename both ESS::get_instance, and ProfileManager::get_instance to <class>::get_singleton, to match Godot's standard. 2020-05-23 16:29:47 +02:00
7bbca9ae89 Centralized most of the 4.0 port code into a new header. 2020-05-22 20:48:08 +02:00
18f3095832 Removed the EntityGender enum. Now everything uses plain int model indexes. 2020-05-20 20:38:10 +02:00
577a3b108b EntitySpeciesData now contains an array of SpeciesModelDatas. 2020-05-20 20:20:26 +02:00
69c6af4882 Removed the EntityTypes enum. 2020-05-20 11:51:05 +02:00
fa33d5d57e Renamed ItemVisual to ModelVisual. 2020-05-19 21:09:00 +02:00
b1efeb662a EquipSlots are now customizable from the ProjectSettings. 2020-05-19 18:58:01 +02:00
d20419621d Character, and Class levels are now customizable through ProjectSettings. 2020-05-19 02:19:23 +02:00
9fd0c23f5b Fix compile for 4.0. 2020-05-16 21:32:33 +02:00
f92758ce3d Fix potential crash. 2020-05-03 00:10:41 +02:00
c3a1bc4503 Fix initial value of EntityStat's percent. 2020-05-02 23:52:21 +02:00
760254b7b1 Added a new convenience stat setter. 2020-05-02 01:54:12 +02:00
e033d5a988 Clean ups to StatData. 2020-05-02 01:42:44 +02:00
ca07679be1 Implement the new setters in Entity, and also bind the new methods. 2020-05-01 18:06:20 +02:00
b97bf3a767 Merged Stat into Entity. 2020-05-01 17:15:44 +02:00
65f0d3e7b3 Removed more things. 2020-04-30 15:32:02 +02:00
a53d7d2eb7 A change got left out. 2020-04-30 14:17:41 +02:00
58b318b9f4 Stat simplification/rework - Part 1. Stats doesn't work yet! Removed StatModifier, and initial Stat api simplification/cleanup. 2020-04-30 14:17:18 +02:00
085890cd15 Clenaups to Stat. 2020-04-30 11:19:45 +02:00
cbac91ae1e Cleaned up StatDataEntry. 2020-04-30 00:17:01 +02:00
94d2ddf73b Moved StatData into EntityData from EntityClassData. 2020-04-29 18:12:09 +02:00
19fd2ea109 Added an _initialize vmethod to entity, this makes the health and speed resources customizable. 2020-04-29 01:25:02 +02:00
38d6181469 Now health and speed are automatically allocated in Entity, the resource management methods have been adjusted to ignore them (they can be removed, and or replaced deliberately though). 2020-04-29 01:05:31 +02:00
bebab39f34 Added a simple Speed and Health resource. 2020-04-28 23:54:23 +02:00
2c47f9f550 Standardized notification methods to have the "notification" prefix, instead of the "on", and changed the naming a bit. This makes them stand out inside the docs, and it's easier to get completions for them while using the api. 2020-04-28 20:47:34 +02:00
0a9d4d3c72 Few more renames. 2020-04-28 19:03:17 +02:00
8864cdee06 Even more renames. 2020-04-28 19:01:46 +02:00
f1e38e5a2a More renames. 2020-04-28 16:50:26 +02:00
37660951ca More renames. 2020-04-28 16:39:42 +02:00
86aaf2eaf5 More renames. 2020-04-28 16:17:54 +02:00
9be4cba706 Same treatment to aura related methods. 2020-04-28 16:07:36 +02:00
68a6256e67 Converted more methods. 2020-04-28 15:58:20 +02:00
a5fb39a002 Same treatment to the crafting related methods. 2020-04-28 15:41:48 +02:00
1afc3511f8 Same to the global cooldown related methods. 2020-04-28 14:24:05 +02:00
c28fbd155b Same treatment to entity_resource related methods. 2020-04-28 13:10:57 +02:00
62d3928ced Equpiment-related methods now start with the equip keyword. 2020-04-28 12:31:03 +02:00
e3eeb581c4 Updated a few more signals. 2020-04-28 11:58:56 +02:00
90ad406d73 A bit of cleanup for the new api. 2020-04-28 11:44:47 +02:00
06283f3768 Same api cleanup to the clientside versions of the methods. 2020-04-28 03:09:26 +02:00
d110b3368f Moved cast, damage, heal and aura related serverside events into combined events to work similarly as notifications in Node. This makes creating events like these possible from scripts. (The rest will be converted aswell.) 2020-04-27 21:30:59 +02:00
8d680240ea Now health and speed are both considered EntityResources. They'll have automatic setup a bit later. If this system works out well Stats will be cleaned up, and simplified. 2020-04-27 18:37:43 +02:00
46950b6378 Removed PlayerResourceType getter from EntityClassData as it is not needed anymore. 2020-04-27 17:16:53 +02:00
9e64163f61 Fix crash by hiding a property that shouldn't have been visible from the editor. 2020-04-26 12:08:16 +02:00
e3f110a962 Fix typo. 2020-04-26 11:53:48 +02:00
5901fc66d0 Handle invalid/old properties better. 2020-04-25 21:27:26 +02:00
366d2336d5 Updated StatData's properties to use human readable names. 2020-04-25 19:58:29 +02:00
04b8772a1d Removed the MainStat enum. 2020-04-25 19:48:25 +02:00
0f49ea2ea6 Complex level stat data is using the new system now aswell. 2020-04-25 19:48:09 +02:00
9ede69c7b4 Add destructor to simple level stat data. 2020-04-25 19:32:50 +02:00
2c99111860 Entity's character level up uses the new system now aswell. 2020-04-25 19:25:00 +02:00
aa5cec5071 SimpleLevelStatData now uses the new flexible stat system. 2020-04-25 19:24:05 +02:00
38de5a7c1a Fix error in binding. 2020-04-25 19:11:45 +02:00
b3442919de Customizable stats - part 2. Removed the StatId enum. (The main stat enum still nees to be removed.) 2020-04-25 16:50:53 +02:00