Neler yeni

Foruma hoş geldin, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Kod Oyuncular Arası Yang Alışverişi

Fatih Bulut

Süper Üye
Katılım
6 Kas 2021
Mesajlar
2,868
Tepkime puanı
4,320
Puanları
113
Yaş
31
Konum
Türkiye
Dc
fatihbulut

Oyuncular Online Olmak Zorundadır para alışverişi olması için
Kod:
/sendyang Komutu Entegre Etme Rehberi
=====================================



1. char.h
---------
class CHARACTER yapısını bulun ve içine şunu ekleyin:

bool SendYangTo(LPCHARACTER target, int yang);

Örnek:
class CHARACTER : public CEntity, public CFSM, public CHorseRider
{
public:
...
bool SendYangTo(LPCHARACTER target, int yang); // ← EKLE
...
};

2. char.cpp
-----------
Dosyanın en sonuna şu fonksiyonu ekleyin:

bool CHARACTER::SendYangTo(LPCHARACTER target, int yang)
{
if (!target || yang <= 0 || GetGold() < yang)
return false;

PointChange(POINT_GOLD, -yang);
target->PointChange(POINT_GOLD, yang);

ChatPacket(CHAT_TYPE_INFO, "%s adlı oyuncuya %d Yang gönderdiniz.", target->GetName(), yang);
target->ChatPacket(CHAT_TYPE_INFO, "%s size %d Yang gönderdi.", GetName(), yang);

return true;
}

3. cmd.h
--------
En alt satıra ekleyin:

ACMD(do_sendyang);

4. cmd.cpp
----------
ACMD tanımlarının en üstüne:

ACMD(do_sendyang);

cmd_info[] dizisine:

{ "sendyang", do_sendyang, 0, POS_DEAD, GM_PLAYER },

5. cmd_general.cpp
------------------
Dosyanın sonuna şu fonksiyonu ekleyin:

ACMD(do_sendyang)
{
char arg1[256], arg2[256];
two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2));

if (!*arg1 || !*arg2)
{
ch->ChatPacket(CHAT_TYPE_INFO, "Kullanım: /sendyang <isim> <miktar>");
return;
}

LPCHARACTER target = CHARACTER_MANAGER::instance().FindPC(arg1);
if (!target)
{
ch->ChatPacket(CHAT_TYPE_INFO, "Oyuncu bulunamadı.");
return;
}

int yang = atoi(arg2);
if (!ch->SendYangTo(target, yang))
{
ch->ChatPacket(CHAT_TYPE_INFO, "Yang gönderilemedi.");
}
}

6. Derleme
----------
Tüm düzenlemelerden sonra:

gmake clean && gmake -j20

7. Test
-------
Oyunda komut:
/sendyang OyuncuIsmi 100000
 

Forumdan daha fazla yararlanmak için giriş yapın yada üye olun!

Forumdan daha fazla yararlanmak için giriş yapın veya kayıt olun!

Kayıt ol

Forumda bir hesap oluşturmak tamamen ücretsizdir.

Şimdi kayıt ol
Giriş yap

Eğer bir hesabınız var ise lütfen giriş yapın

Giriş yap

Tema düzenleyici

Tema özelletirmeleri

Grafik arka planlar

Granit arka planlar