I created an awesome rogue-like game in Ruby. For the GUI, I used NCurses. Since I'm using FlatRedBall as my engine of choice for Silverlight game development, I want to port this game over.
What is the best way to efficiently doing this, and what are the pitfalls I should expect?
For example, Ruby is object-oriented, like C#, and I should be able to just convert (rewrite) classes one by one. However, I will run into issues like:
- NCurses API. I need to possibly create my own notions of a "Window", or else rewrite GUI code. It's one class, but it's BIG.
- Mix-Ins. These are essentially aspect-oriented development. There are a couple of solutions in .NET, like dynamic classes.
What else? Also, I should mention that I want to create a FlatSilverBall (C#) application out of this. That is to say, I will be using the FlatRedBall 2D engine as my foundation. I am not interested in Curses, or any other variation that will allow me to make a console-type game.
As much as possible, I'll dump reusable and helper code, algorithms, etc. into separate projects and generate reusable DLLs.