Forge version 1.5.14

Tentative target release date: Friday March 7 2014.
High Quality Resources for Collectible Card Games
https://www.slightlymagic.net/forum/
https://www.slightlymagic.net/forum/viewtopic.php?f=52&t=13835
1. Human version cannot be called 'instead' of AI one. This method is called to tell certain player (whose controller receives the call) what has happened (in most cases that's other players' choice). AI implementaion is empty because AI currently does not care which color have other players picked.Agetian wrote:In reference to this bug report: viewtopic.php?f=26&t=13834&start=30#p147094 (which was also previously reported in the SVN thread by both Sol and yours truly but did not receive any further discussion/action).
I was trying to look into how it's possible to fix the irritating message box "the AI picked such-and-such color for a multicolor land" and turn it into a game log entry (if you want to know why it is irritating, add 3-4 vivid lands to the AI battlefield and play for a bit). Anyhow, I came to the following interesting conclusions:
1. For some reason, the notification of the picked color value is routed through PlayerControllerHuman instead of through PlayerControllerAi for the AI opponents (PlayerControllerAi actually has an empty notifyOfValue, but it's not called - instead, the human version with the message box is called).
2. I couldn't figure out how to add a new game log entry yet. I tried both adding an event and firing it from the inside of PlayerControllerHuman's notifyOfValue instead of the messagebox, as well as adding a game log entry directly via game.getLog().add(...) with different entry types and even with a new entry type, but neither actually showed an entry during the game. :\ Admittedly, I haven't dug deeply enough, so I'm still looking for how it's done elsewhere.
Your help here is most welcome. Unless there are any objections, I think this message should be a log entry instead of a message box, at least for the AI opponents - not sure about human opponents (is there a reason we're doing a message box for human opponents?). A log entry is non-intrusive, does not block the screen every time, and does not distract the player with flashing screen overlay. Opinions are welcome.
- Agetian
Not really. If the AI is casting a spell, there's no time between choosing the mana and using that mana to put the spell on the stack before the UI would ever update. It probably only really matters in cases like Sunburst and other things that care about specific mana.drdev wrote:Why do we need to notify the human player what color the AI tapped for via game log message or message box? Wouldn't that be automatically reflected in what color appears in the mana pool for the AI player?
Ok, fair enough. In that case a game log entry should be fine.friarsol wrote:Not really. If the AI is casting a spell, there's no time between choosing the mana and using that mana to put the spell on the stack before the UI would ever update. It probably only really matters in cases like Sunburst and other things that care about specific mana.drdev wrote:Why do we need to notify the human player what color the AI tapped for via game log message or message box? Wouldn't that be automatically reflected in what color appears in the mana pool for the AI player?
friarsol wrote:Chris, please don't release until I'm able to confirm that reverting the change Swordshine references fixed the Morph issue?
Edit: Just committed