Agapurnis / factorial-defence-rbx

Roblox Tycoon Game
MIT License
3 stars 1 forks source link

Flamework Integration #5

Closed Agapurnis closed 2 years ago

Agapurnis commented 2 years ago

I've had a few back-and-forths with myself regarding the usage of Flamework, and I think it's likely a good idea to integrate it. It will reduce the amount of code duplication with regard to my current approach, and the opinionated nature will ensure I don't do wacky things.

The current issue regarding state synchronization may be easier to solve as I believe we can interface with a component on the server and client, but our logic will remain safe due to the Service/Controller seperation.

I do have a few concerns, the primary one being the potentially large amount of ore components. I think the best way to see if things will work out is probably to just give it a shot.

Agapurnis commented 2 years ago

I'm having some difficulty wrapping my head around this enough to do it correctly. As mentioned previously, this is not really a problem with Flamework, just myself, and is probably indicative of me doing something wrong. This might take a bit longer than usual, as I'm doing a refactor of the entire codebase in combination with the resolution of #6.

Agapurnis commented 2 years ago

<... outdated ...>

Agapurnis commented 2 years ago

Update: The restructure is going alright. I’ve noticed a few issues I’m not a fan of, but I think things will sort themselves out. A shame I can’t really spread these commits out.

Agapurnis commented 2 years ago

I started working on this again.

Agapurnis commented 2 years ago

Pretty much fully migrated after a major rewrite, though there are still a few kinks to be worked out.

More specifically, the “register” system feels a bit weirded within this context, but I’m struggling to think of a better approach, so I suppose it’s okay.

The item placement system is harder to follow using the new system, but it works okay enough, and can be expanded.

As I continue using Flamework, I find myself putting less methods and data on components, which feels like a good thing and a bad thing. I still need to figure out how I feel about it.

I should hopefully have everything merged in a few days. Be wary of the fact this will be one massive refactoring commit, and is absolutely not spaced out at all.

Agapurnis commented 2 years ago

Yuh. #8