baphomet wrote:its because power and toughness are stored in variables rather than the database when they are drawn. I think if they are in your hand they should gotten from the database then when they are in play a check should be done for additions.
Yes. In other words, I should clean the variables when a creature leaves the "inplay" zone. That's not as easy as it seems because of abilities such as persist, but basically, the main problem is that most abilities (in allabilities.h) are missing a very important method : int destroy() which is supposed to do that job.