- Katılım
- 6 Kas 2021
- Mesajlar
- 2,985
- Tepkime puanı
- 4,500
- Puanları
- 113
- Yaş
- 31
- Konum
- Türkiye
- Dc
- fatihbulut
Özellikler:
GM /sanskutusu komutu yazar → sistem online oyuncular arasından rastgele birini seçer.Seçilen oyuncuya ödül verilir (yang, item, buff vs.).
Tüm oyunculara kazanan duyurulur.
cmd.cpp Komut tanımı:
Kod:
ACMD YAPISINA //
ACMD(do_luckybox);
KOMUT TARAFINA //
{ "sanskutusu", do_luckybox, GM_HIGH_WIZARD, POS_DEAD, GM_HIGH_WIZARD },
cmd_general.cpp Fonksiyon:
Kod:
ACMD(do_luckybox)
{
if (CHARACTER_MANAGER::instance().GetCount() < 2)
{
ch->ChatPacket(CHAT_TYPE_INFO, "Yeterli oyuncu yok.");
return;
}
std::vector<LPCHARACTER> players;
CHARACTER_MANAGER::instance().for_each_pc([&players](LPCHARACTER tch){
if (tch->GetGMLevel() < GM_LOW_WIZARD) // GM'leri hariç tut
players.push_back(tch);
});
if (players.empty())
{
ch->ChatPacket(CHAT_TYPE_INFO, "Oyuncu bulunamadı.");
return;
}
int idx = number(0, players.size() - 1);
LPCHARACTER winner = players[idx];
// Ödül: 1.000.000 yang
winner->PointChange(POINT_GOLD, 1000000);
BroadcastNotice(" Şans Kutusu Kazananı: %s! 1.000.000 yang kazandı!", winner->GetName());
}