Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1075 thank(s) in 852 post(s)
I think it's safe to use the current cMonster::eType enum for "mob base", it corresponds to the protocol's entity type, so it makes sense.
I don't have a vision of what the "configurations" are exactly. Is it just "having member variables dedicated to X", or is there something more, such as a specific combination of "components"?
Where will undead-sunlight-burning go, component-wise? Does it go under Reactions? Or will there be a specific component for "environment reactions"? How about nether mobs not taking damage from fire and lava?
Posts: 254
Threads: 16
Joined: Oct 2013
Thanks: 3
Given 20 thank(s) in 18 post(s)
12-24-2013, 07:36 AM
(This post was last modified: 12-24-2013, 07:37 AM by SamJBarney.)
Honestly, I don't know where sunlight-burning would go. I do think that "Environmental Reactions" would be a good place to put those. That way, squids can burn when exposed to air, nether mobs don't react to anything (maybe drown in liquids?), and regular mobs drown in liquids and burn in lava.
Though do nether mobs burn when exposed to sunlight?
Posts: 254
Threads: 16
Joined: Oct 2013
Thanks: 3
Given 20 thank(s) in 18 post(s)
12-24-2013, 07:43 AM
(This post was last modified: 12-24-2013, 07:46 AM by SamJBarney.)
Agreed.
Adding multiple to a slot would make it very complex... Plus, having multiple slots of a single type would make it difficult to prevent collisions. For instance, what would happen if I had multiple move types? If I had slime movement and squid movement on the same target, they would naturally conflict.
Do you have a tool that you usually use for a mindmap?
Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1075 thank(s) in 852 post(s)
Will the player be represented in the same way? It would make some sense - we could then have players controlled by an AI instead of a real network client. On the other hand it would very much complicate the API to plugins, and most plugins would need rewriting a lot of code, because the cPlayer object provides quite a lot of functionality extra to entities.
Posts: 1,469
Threads: 57
Joined: Jul 2012
Thanks: 66
Given 127 thank(s) in 108 post(s)
I think it would be really cool, IDK if it's possible in any sort of real timeframe though.
Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1075 thank(s) in 852 post(s)
It might just be easier to make an "adapter" class that would allow us to put any AI component into a cPlayer object, rather than modifying the cPlayer object to fit in this new architecture.
Posts: 4,628
Threads: 115
Joined: Dec 2011
Thanks: 693
Given 494 thank(s) in 423 post(s)
We could also create a special mob class called cMobPlayer?