Skip to content

Instantly share code, notes, and snippets.

@aeTunga
Last active October 12, 2021 07:43
Show Gist options
  • Save aeTunga/426ab6f14ffe5880e683434d11b61e98 to your computer and use it in GitHub Desktop.
Save aeTunga/426ab6f14ffe5880e683434d11b61e98 to your computer and use it in GitHub Desktop.
#ifdef ENABLE_CHAT_BOT
struct FuncBotDuyuru {
const char* m_str;
BYTE m_bEmpire;
FuncBotDuyuru(const char* str, BYTE bEmpire) :
m_str(str),
m_bEmpire(bEmpire)
{
}
void operator () (LPDESC d) {
if (!d->GetCharacter()) { return; }
d->GetCharacter()->ChatPacket(CHAT_TYPE_SHOUT, "%s", m_str);
}
};
const char* empireflags[3] = { "|Eempire/shinsoo.tga|e","|Eempire/chunjo.tga|e","|Eempire/jinno.tga|e" };
const char* komutArray_1[] = { //Normal Selamlar
"as","As","Aleykum selam","aleykum selam","ve aleykum selam reis", "as hosgeldin admin.", "kirvem hosgeldin aleykum selam","as canim hosgeldin","ALEYKUM SLEM ADMIN","ALEYKUM SELAM ADMIN"
};
const char* komutArray_2[] = { //Karisik Selamlar
"as","As Admin","aleykum selam","as admin pmye bakarmisin?","as reis hosgeldin.","as adminbey nasilsiniz."
};
const char* komutArray_3[] = { //Random Konusmalar
"Admin oyunla nezaman ilgileneceksin.","Admin sorun yasiyorum bir bakarmisin?","Admin pm lutfennnnn","Admin itemim kayboldu yardim et lutfen..", "Admin ep satin aldim ep fiyatlari cok uygun tesekkur ederim.", "Admin anani sikim", "Admin oyunla ilgilen orospu cocu"
};
const char* karakterAdArray[] = {
"Homeron","MrGe","HOPPALA","xAFFETMEg","MythArrow","Shunai","RzeLy","GODUMBOZULDU","CUPPALA","Hemera","Dou","ASSASIN",
"Mangeku","PADISAH","BOZKURT","MUSLERA","RvsSpeed","ASL4N","Ninja","Hell","Olc","LORD","DELI","Seyis","Paradise","EFSANE",
"BABA","HeavenFARM","Speed","TURUVALI","ASDASDASD","314159265358","HeddA","Efsun","ESDELIDELI","TrMusallat","BASKAN","Wind",
"BenGeldim","TENNSII","Ra","Eda","HeMRA2","GAVIROSTA","Ed","Demirci","GOD","HAYYAVRUM","AyYuzlum","MEMISxKraL","LORDfarm","HerYerDuman6",
"KasarRuski","BaekLORD","Volkann","0R0SPUEDA","ZALIM","PsychoSociaL","SINCANLIM","GowtheR","AVSARBEY","BABAxDERLER","Burra","GARFIELD",
"CaptainStag","ZihinseLPlus","RAJON","benuzulmem","Pretzel","EJDER","Zoe","Sura","TEK","sds","Ez4Ence","31415926535","KRITIKCI","REIS","58","KURUUU",
"TEKILA","meflud","NARCOS","Eclipse7","tethyS","DeliDumrul","SUMBUL","ZaMaZoM","Ssss","WarWolf","bngcf","nbgmn","POV","KARA","Sinek","cash","llWarll",
"AYAR","sisko","CHIVAS","pretzell","civciv","K1","Eclipse77","NobleStrike","KekkeiGenkai","DrKing","RuhsuzOkcu","PALANBEYAZ","mefflud","THESAT","ZORBEY","RozeN",
"lRozeNl","razor123","SANRI","DaRkBLue","SeqhilNinja","civciv42","OTTO","SmokerDAYI","FizofreN","maca5","kupa10","SmokerIDAYI","THANOS","USTADFarm","USTAD","xXxEcel7","DOLIVKA","KaMoSeT","KRAL",
"VATAN","ZxKRALxZ","Kutlusam","EdaFarM","PARMAKDARBE","UstaFarm","LAZBABA","SeljukEmpire","Enemy","Sharingan","ZeuS","Hupi","DAYI","ASTERIX","xKraLTR","KIZzilli","KRALBenim",
"monster","SOSYOPAT","H1N1","KesBeni","xChe","xCha","xChaFARM","DOLIVKA2","GODFARM","Itachi","YAYGELARTIK","H1pNo0zz","O1Capon","OsCArr","DarkNeSs","VeNom","PoPo","ZORO","PATOS",
"Maestro","SoNRaP","Kerberos","AFU","111H","Paramedic","OhaSHAMAN","XMEN","OhaKiNG","KafamDuman6","XxLeGendxX","Ramires","gaddaR","eXedRa","FarkBende2Le","Toxic","Cabbar","ModernThug","Lilith",
"EFSOkral","Hercai","RedKeys","BERGEN","Devilish","p0seid0n","VEZIR","ASGARD","ZILAN","Oflii","Eye4You","xEvrimx","EFSNBOTS","TurkishPower","Trmehmety","TRmehmet","KINSEI","Redflowers","TURKIYE",
"TACSIZKRAL","ISouLI","Takumi","SoNNinJa","SOYLUYUM","Hawaggi","SmithKlineTR","YARGIC","CHEf","Chess","OTTOMAN","Test","Hemera2","Szijj","XMEN2","MythWarrior","Kharon","Lennon","DILENCIxOGI",
"JaWeL","MEZARCI34","Rowss","LASTDANCE","KANUNSUZ","Pailrox","Hassaki","DadaS","WOLF","xFARKETMEZ","MyAE","HaHaHa","Kxe","oVEYTo","EskiciGeldi","mehmet3535","RowsTek","LASTDANCEv3","Vip",
"ROWS2YEDi","RowsAgla","EnginSertkay","SIKINTILI","lSIKINTILI","CaptanJake","SAR","efsun2","efsun3","EZEL","bufff","SwangeR","Archer","SLOTVERAM","NoNameWar","Akamaru","SOYLU","3GO","Joseph","LASTDANCEv2","Bab",
"Kaan","Bebek","Dora","PosionFake","BabaMerhaba","ByHefna","dsfasdfsadf","BEST","engntekleyen","EnginSertkaa","LASTDANCEv4","Azazel","xORGENERAL","ShiftDelete","IIAnasoNII","JustWatch","AmaTerrasu","DyCold",
"Furious","xD","Amansz1Keko","OhCu","OdilNl","AeYEmRe1","BoSs","TARZAN","RiqeL","J3enQ","Indicibus","SarKopat","Orspunami","lVIPl","lLoran","T1T4N","oGeav","lTheGaDDaRl","Aetheaf","Paytak","PaklosSs","Endurance",
"Hassasium","Ugur","TrOnLaR","Tazia","cozme","OrkunMNTMR","Fre","kutsama1","Baro","TAGOF","DioBrando","BGSLOW","Jonathan","EZ4ENCE1","Extezy","EZ4ENCE2","SVYRM","DemiGod","Pogba","ProfessionaL","LoRdLaRiNeFe",
"02","D4YI","OLO","POMPA","KUJU","Kirwe","kiriw","Kira","ANASIKICI","TankerMelda","BidonNecmi","Mayhem","Merve","ScorpionJx","ScorpionJr","iboyusikm","PaklosS","Sumela","Josuke","Okuyasu","Babaa","ADALET",
"SUH","PerfectDewiL","Oglim","Lizzo","ByJamiryoo","CIZBIZ","DeliNoyan","Minto0o","Orkun1910","PaklosSsW","Powerade","HERMES","Ryzen","Boo","PGA","Mata","Nightovel","XXVI","Shaman","CorteX","Muholox","lility",
"Muholox58","Skayres","TRDrenisH","Matriks","KralMetehan","RaptorBlood","Timmy","TRDrenissH","K3x3","TainTed","EMMI","DyN","BlackBrother","QUAKE","EdiLe","Manly","ZeusunDenizi","Momo","KaiSa","Dio","YAKAMOZ",
"Eulith","Sensizim","Malphite","SALMAM","G4me0vER","Pinhani","AyiABBAS","FarketmeezWT","EFSUNNNNNNN","TylerDurden","Vaenictas","AyiHASO","CJ","KeNoKe","I3ySurahi","SpeeDs","MaXiMuS","AyiCABBAR",
"AyiKADO","NoName2","NoName","ged","DeaTLoarD","35FP","Fei","Selininki","vosseL","veselam","xLarge","azer","Lx","GodzillaR34","ALVIN","ReD","Baykan","SOKARCA","malemre","SpyHorn","hucketbead","FUCKER",
"aaaaaaaaaa","andavalemre","ITeKKrAlI","VesseLam","DarkSide","EternaL","LANADELREY","DIRILISH","Afrodit","bossvero","J3adJ3oy","Tugce","ImMariuana","xResperct","JARDEL","RONIN","Rhott","EFSANExMEMO",
"Aldarion","TheMoRe","MP3","AyiCEREN","vay","Titanium","SURAVAR","HemeraTEST","Crow","Kwoon","Laviedd","STALLIZE","AyiHUSO","MAREN","AyiMERDO","icz","QuanChe","NetzsChe","Masquerade","SQVALYE","m0naLisa",
"Despina","Pemions","AYISIkEN","omerhamza","ninjaa","AyiBATU","Sude","Ninjely","EFSUNCUUU","TestaRossa","F458","MoRDoR","SparTacus","F430","Eaglee","MORCENNET","sadsadasdasd","Eagle","GaNDaLF","AyiABBAS2",
"AyiABBAS3","god5465","godUZI","KING","ReaLxFLU","TestaRoosaa","Sasurata","Carla","Kutsabebeim","Oklipotiko","XiaoYung","LasTShot","PaklosSsWW","Sudee","Fallacy","Paladin","Ayran","Dazzler","Remy","Weakside",
"Eliena","ZzZxXxZzZ","Umut","CakarLaRRR","Kurosaki","Rhot","AYYILDIZ","sudeee","SadeKek","yuuji","Ninjayimben","Aizen","dilara","BALKAN","SECURITY","Ashe","Duygununki","V1","I3omonti","HoppA","AdALeTT","GRALbiLD","Kuzan",
"Zeors","SemiGod","AyiSAMAN","KARASURA","AyiKADO1","XxSrSrXx","XxSrSrXx1","DELALE","MagicLord","Hasecan","Chupons","SekoBey","Halil","POSEIDON","Helu","qunToX","EhLiKeyfs","SonSamuRaY","Zeigen","Levi",
"yuujii","TEKYUMRUK","AVVA","suraaaav","Sekoooo","CaT","WurGunBey","Invincible","Asi","FRENTE","RoyaLs","Asiye","Serchuva","Basim","YARRAAAAAAAA","HyperGhosTR","YARRAAAAA2","YARRAAAAAAA3","M3L1H","EsmaSultan","ssAss",
"EmonG","TAMADIR","FARM","SEYTAN","BIG","PuF","Alex","ssOss","ThiweT","CardinalRed","SiKiCiSOKUCU","AYIABBASOC","MesquL","Delpwinzy","Snow","MAYKADAPITKA","ssuss","HeLfOrCe","Yujininki","Tamam","fefewfewgege","TheGodofGods",
"LeuEntrica","ThELF","VARLUKHAN","PATRON","PATRON17","PATRON1","IPuF","AVVArutin","zfsadfsdf","NinjaMP","babafingo","Shaman1","leykon","DaPoet","Atom","Doja","madrid","S4PULTUR4","PoweRShooT","asdsafasfsdf","AmmaTerasu",
"ZorBaaTR","sadasda","KaRaCeLLaT","UtkuDuman","InsCnmYa","Poncik","DaRK","SaKArYAl1","MuSaLlat","Scary","Orii1928","Elizabet","XKralTRX","35BUCA1928","clibces","ZZoRRo","GeFoRGe","VoNDeRFuLL","HiwatariaKai","qUANTUMFIZIQ",
"mezarci","Mira","Poncik2","amra","erkumenkozer","ergumenkozer","BASBELASI","SIZOFREN","poncik3","Resque","Strawberry","ponc","OCBerkinElvn", "HikmetAypek","SCA"
};
EVENTINFO(chatbot_event_info)
{
DynamicCharacterPtr ch;
int iDuyuruSure;
int iDuyuruHizi;
BYTE bKomutTipi;
chatbot_event_info()
: ch()
, iDuyuruSure(0)
, iDuyuruHizi(0)
, bKomutTipi(0)
{
}
};
EVENTFUNC(chatbot_event)
{
chatbot_event_info* info = dynamic_cast<chatbot_event_info*>(event->info);
if (info == NULL) { sys_err("chat info is null"); return 0; }
LPCHARACTER ch = info->ch;
int* iSure = &(info->iDuyuruSure);
if (*iSure > 0) {
const char* karakterMesaj;
const char* karakterAd;
BYTE karakterBayrak;
karakterAd = karakterAdArray[number(0, (sizeof(karakterAdArray)/sizeof(*karakterAdArray)) - 1)];
karakterBayrak = number(0,2);
int karakterLevel = number(1, 99);
if (info->bKomutTipi == 1) { karakterMesaj = komutArray_1[number(0, (sizeof(komutArray_1)/sizeof(*komutArray_1)) - 1)]; }//Normal Selam.
if (info->bKomutTipi == 2) {
if(number(1, 20) = 1)
{
karakterMesaj = komutArray_2[number(0, (sizeof(komutArray_2)/sizeof(*komutArray_2)) - 1)];
}
else
{
karakterMesaj = "as";
}
} //Karisik Selam.
if (info->bKomutTipi == 3) { karakterMesaj = komutArray_3[number(0, (sizeof(komutArray_3)/sizeof(*komutArray_3)) - 1)]; } //Random Konusmalar.
char szNotice[512 + 1];
snprintf(szNotice, sizeof(szNotice), "%s %s |H%s%s|h(#)|h|r : %s", empireflags[karakterBayrak], karakterAd, "whisper:", karakterAd, karakterMesaj);
TPacketGGShout p;
p.bHeader = HEADER_GG_SHOUT;
p.bEmpire = karakterBayrak;
strlcpy(p.szText, szNotice, sizeof(p.szText));
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGShout));
const DESC_MANAGER::DESC_SET& c_ref_set = DESC_MANAGER::instance().GetClientSet();
std::for_each(c_ref_set.begin(), c_ref_set.end(), FuncBotDuyuru(szNotice, karakterBayrak));
--* iSure;
if (ch != NULL && ch->IsGM()) { ch->ChatPacket(CHAT_TYPE_INFO, "<GM Bilgi> Chat bot bitmesine %d saniye kaldi.", *iSure); }
} else { if (ch != NULL && ch->IsGM()) { ch->ChatPacket(CHAT_TYPE_INFO, "<GM Bilgi> Bot basarili bir sekilde tamamlandi."); }return 0; }
return PASSES_PER_SEC(info->iDuyuruHizi);
}
ACMD(do_chatBot)
{
if (!ch && !ch->IsGM()) { return; }
char arg1[256], arg2[256], arg3[256];
int argSure = 0;
int argBotHizi = 0;
BYTE argKomutTipi = 0;
one_argument(two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2)), arg3, sizeof(arg3));
if (!*arg1 || !*arg2 || !*arg3) {
ch->ChatPacket(CHAT_TYPE_INFO, "-------Kullanim: /chat_bot <komut tipi> <bot suresi (saniye)> <bot gecis suresi (saniye)>-------");
ch->ChatPacket(CHAT_TYPE_INFO, "---------------------------Komutlar---------------------------");
ch->ChatPacket(CHAT_TYPE_INFO, "------Normal selam : 1");
ch->ChatPacket(CHAT_TYPE_INFO, "------Karisik selam : 2");
ch->ChatPacket(CHAT_TYPE_INFO, "------Random Konusma : 3");
return;
}
str_to_number(argKomutTipi, arg1);
str_to_number(argSure, arg2);
str_to_number(argBotHizi, arg3);
chatbot_event_info* info = AllocEventInfo<chatbot_event_info>();
info->iDuyuruSure = argSure;
info->iDuyuruHizi = argBotHizi;
info->bKomutTipi = argKomutTipi;
info->ch = ch;
event_create(chatbot_event, info, 1);
}
#endif
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment