508 |
SendMessage(GetItem(move(p,enigma::EAST)), "ignite"); |
SendMessage(GetItem(move(p,enigma::EAST)), "ignite"); |
509 |
SendMessage(GetItem(move(p,enigma::WEST)), "ignite"); |
SendMessage(GetItem(move(p,enigma::WEST)), "ignite"); |
510 |
|
|
511 |
sound::PlaySound("explosion2"); |
play_sound("explosion2"); |
512 |
SetItem(p, new Explosion(Explosion::MEDIUM)); |
SetItem(p, new Explosion(Explosion::MEDIUM)); |
513 |
} |
} |
514 |
|
|
566 |
SendMessage(GetItem(move(p,enigma::EAST)), "ignite"); |
SendMessage(GetItem(move(p,enigma::EAST)), "ignite"); |
567 |
SendMessage(GetItem(move(p,enigma::WEST)), "ignite"); |
SendMessage(GetItem(move(p,enigma::WEST)), "ignite"); |
568 |
|
|
569 |
sound::PlaySound("explosion1"); |
play_sound("explosion1"); |
570 |
SetItem(p, new Explosion(Explosion::STRONG)); |
SetItem(p, new Explosion(Explosion::STRONG)); |
571 |
} |
} |
572 |
|
|
601 |
if (++objectcnt == 1) { |
if (++objectcnt == 1) { |
602 |
init_model(); |
init_model(); |
603 |
world::PerformAction(this, true); |
world::PerformAction(this, true); |
604 |
sound::PlaySound("it-triggerdown"); |
play_sound("it-triggerdown"); |
605 |
} |
} |
606 |
} |
} |
607 |
void remove_object() { |
void remove_object() { |
608 |
if (--objectcnt == 0) { |
if (--objectcnt == 0) { |
609 |
init_model(); |
init_model(); |
610 |
world::PerformAction(this, false); |
world::PerformAction(this, false); |
611 |
sound::PlaySound("it-triggerup"); |
play_sound("it-triggerup"); |
612 |
} |
} |
613 |
} |
} |
614 |
|
|
776 |
Magnet() : OnOffItem ("it-magnet") { |
Magnet() : OnOffItem ("it-magnet") { |
777 |
set_attrib("strength",30.0); |
set_attrib("strength",30.0); |
778 |
} |
} |
|
~Magnet() {world::RemoveForceField(&ff);} |
|
779 |
private: |
private: |
780 |
void init_model() { |
void init_model() { |
781 |
if (is_on()) |
if (is_on()) |
858 |
set_attrib("strength",50.0); |
set_attrib("strength",50.0); |
859 |
set_attrib("range", 1000.0); |
set_attrib("range", 1000.0); |
860 |
} |
} |
|
~WormHole() {world::RemoveForceField(&ff);} |
|
861 |
private: |
private: |
862 |
void on_creation() { |
void on_creation() { |
863 |
Item::on_creation(); |
Item::on_creation(); |
922 |
ItemAction activate(Actor *a, GridPos) { |
ItemAction activate(Actor *a, GridPos) { |
923 |
// Switch to other marble |
// Switch to other marble |
924 |
player::SwapPlayers(); |
player::SwapPlayers(); |
925 |
sound::PlaySound("switch"); |
sound::PlaySound ("switch"); |
926 |
return ITEM_KEEP; |
return ITEM_KEEP; |
927 |
} |
} |
928 |
}; |
}; |