Metin2 Hungarian Forum

Metin2 => Privát szerverek => Szerver készítés => A témát indította: Deangerious Dátum 2018-04-19, 21:04:43

Cím: [TUT][C++] Lóra való felszállás időbeni korlátozás
Írta: Deangerious Dátum 2018-04-19, 21:04:43
Sziasztok.

Láttam segítség kérő témát a lóra való felszállás időbeli korlátozása kapcsán és mivel nekem már készítettek, gondoltam engedéllyel megosztom ezt.

Mit csinál ez a módosítás?

Korlátozza a lóra való felszállást, így megadott időközönként tud csak felszállni a játékos, alapértelmezetten 5 másodperc van beállítva, de ez tetszés szerint állítható.

Amire szükségünk lesz az csak szerver forrás.

Lássuk is!

- Navigálj el ide a szerver forrásodban: game/src/char_horse.cpp

- Keresd meg az alábbit:

#include "arena.h"


- Közvetlen az előbb keresett szöveg után illeszd az alábbit:

#include "utils.h"


- Keresd meg az alábbit:

bool CHARACTER::StartRiding()
{


- Közvetlen az előbb keresett szöveg után illeszd az alábbit:

int horseRideLimitValue = 5; //Itt állítható az idő limitálás másodpercben
int horseRideLimitTime = GetQuestFlag("horse_ride.ride_limit");
if (horseRideLimitTime > get_global_time())
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Még nem tudsz felszállni a lovadra, kérlek várj még %d másodpercet."), horseRideLimitTime - get_global_time());
return false;
}



Tehát így néz majd ki:

bool CHARACTER::StartRiding()
{
int horseRideLimitValue = 5; //Itt állítható az idő limitálás másodpercben
int horseRideLimitTime = GetQuestFlag("horse_ride.ride_limit");
if (horseRideLimitTime > get_global_time())
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Még nem tudsz felszállni a lovadra, kérlek várj még %d másodpercet."), horseRideLimitTime - get_global_time());
return false;
}


- Ezek után keresd meg az alábbit:

MountVnum(dwMountVnum);


- Közvetlen az előbb keresett szöveg után illeszd az alábbit:

SetQuestFlag("horse_ride.ride_limit", get_global_time() + horseRideLimitValue);


Tehát így néz majd ki:

MountVnum(dwMountVnum);
SetQuestFlag("horse_ride.ride_limit", get_global_time() + horseRideLimitValue);


Meg is vagyunk. Elmented, feltöltöd, lefordítod. :)

Nem az én módosításom, UdvAtt108-tól kaptam, az engedélyével tettem ki.
EhPortal 1.39 © 2025, WebDev