void DollarSprite::on_update() { move_at_heading(m_heading_to_move, 10.0f); //scale(scale() - .0025); if (m_life_timer.has_elapsed()) { Message* msg = obtain_message(); msg->set(MESSAGE_TYPE_DOLLAR_COMPLETED, this, nullptr); send_message(msg); } }
int main() { HANDLER handler; MSG* msg; int i=0; if (start_handler(&handler, my_process_message)!=0) { LOGE("start handler failed!"); return -1; } sleep(3); msg = obtain_message(&handler, 1, "TEST", strlen("TEST")); send_message_delay(msg, 4*1000); msg = obtain_message(&handler, 3, "TEST", strlen("TEST")); send_message_delay(msg, 5*1000); /* while(1) { for (i=0; i<9; i++) { LOGV("++ obtain message: %d\n", i); msg = obtain_message(&handler, i, "TEST", strlen("TEST")); if (msg) { LOGV("++ send_message_delay: %d\n", i); sleep(1); send_message_delay(msg, i*1000); } } } */ while(1); return 0; }
void ExplosionSprite::send_dead_message() { Message* message = obtain_message(); message->set(MESSAGE_TYPE_EXPLOSION_DEAD, nullptr, this); send_message(message); }