Hi everyone! Finally, some more progress this week. The multiplayer roof painting I talked about last week is completely done now: roof colors are saved server-side, the roof colors are sent to the players when they load the game, and when you paint something this updated live for all players nearby.
Next up: dyeing clothes. The first thing I had to do here was making sure all graphical elements were available. There are two ways I could do this: make the user clients generate the graphics on the fly when needed (as I do with fish), or pre-generate them. The first solution makes the game 'smaller' (less mb), but also slower, while the second one makes the game larger but faster. Because the number of possible cloth-color combinations is much smaller than the number of possible fish , and because for each cloth-color combination 9 sprites have to be recolored, which will really make the game hang for a second on slower computers, I decided to go with solution 2. To accomplish this, I wrote a quick script to recolor and rename large amounts of pictures automatically. Long live the automagic!
When the graphical part was done, I focussed on the actual dyeing of the clothes. For this, I use the already existing combination menu. The game recognizes every combination of a piece of clothing and a bucket of paint as an attempt to dye something, so (unlike other crafting recipies) the position of the elements does not matter here. This is how you dye your poncho orange:
The next step is introducing the GUI to colored items, and making sure you can actually wear these dyed cloths. This is where I am at the moment; there are a number of functions that can not yet deal with items having properties (like colors), so they forget the color all the time, and my task is to find all these actions and fix them. I got the most important parts covered (like putting on clothes and taking them off again), but there still are a lot of corner cases. And then again, we have the multiplayer aspect, where the people around you should see the color of the clothes you're wearing. Because that's what dyeing cloths is all about, of course.
Once that is done, painting is done for now! Hurray! Next up is a feature inspired by the latest update in the Prison Architect Alpha: an in-game time lapse tool! I've done extensive research on whether I can get this in, and so far the results have been promising. I hope to be able to tell you more about it next week.