Post by drah on Dec 11, 2018 7:23:23 GMT
As most others have stated, awesome tutorial, major thanks for putting in the hard work. I've learned a ton so far.
I've gone through most of the lessons and have done a fair amount of work adapting the code in attempts to understand things. I've done pretty decently so far, and I branched off and created a rather elaborate design for abilities that mirror the design of the original game. In other words, I use the same type of ranges, exclude self, areas, cone, infinite, line, etc. You get the idea. In one iteration of this project, you had parsed in values from an online FAQ to create ability assets. I'd like to do something similar, as you can imagine that tweaking damage formulas and such is a fairly easy task in a spread sheet, simply parse the data again, and test things out.
My issue is coming down to the fact that after the major refactoring of the code, I'm a bit lost as to how a given ability's values are connected to it. For example, I understand that an ability has a range, but in this design, the range itself has its own class. I need to know that there is an ability.GetComponent<AbilityRange>().horizontal, or .vertical. With all of the data no longer contained in a simple ability class, the definition of each ability has become quite confusing. C# is not a language that I'm overly familiar with, so I'm picking it up as I go. That being said, I'm not sure how you add a component to an ability. I'm not sure what that code actually looks like and my poking around and grepping through the source files has given me relatively little results.
Any pointers on how to get started with the factory and what all fields are required? I'm also a bit mystified how you add the effects to the abilities.
I've gone through most of the lessons and have done a fair amount of work adapting the code in attempts to understand things. I've done pretty decently so far, and I branched off and created a rather elaborate design for abilities that mirror the design of the original game. In other words, I use the same type of ranges, exclude self, areas, cone, infinite, line, etc. You get the idea. In one iteration of this project, you had parsed in values from an online FAQ to create ability assets. I'd like to do something similar, as you can imagine that tweaking damage formulas and such is a fairly easy task in a spread sheet, simply parse the data again, and test things out.
My issue is coming down to the fact that after the major refactoring of the code, I'm a bit lost as to how a given ability's values are connected to it. For example, I understand that an ability has a range, but in this design, the range itself has its own class. I need to know that there is an ability.GetComponent<AbilityRange>().horizontal, or .vertical. With all of the data no longer contained in a simple ability class, the definition of each ability has become quite confusing. C# is not a language that I'm overly familiar with, so I'm picking it up as I go. That being said, I'm not sure how you add a component to an ability. I'm not sure what that code actually looks like and my poking around and grepping through the source files has given me relatively little results.
Any pointers on how to get started with the factory and what all fields are required? I'm also a bit mystified how you add the effects to the abilities.