- Katılım
- 23 May 2016
- Konular
- 6
- Mesajlar
- 48
- Online süresi
- 196s
- Reaksiyon Skoru
- 24
- Altın Konu
- 0
- Başarım Puanı
- 64
- TM Yaşı
- 9 Yıl 11 Ay 4 Gün
- MmoLira
- 31
- DevLira
- 0
Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!
Server/src/
char.h aç ve arat
void SetGMLevel();
altına ekle
char.cpp arat
quest::CQuestManager::instance().LevelUp(GetPlayerID());
altına ekle
arat
BYTE CHARACTER::GetGMLevel() const
altına ekle
arat
TPacketGGLogin p;
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, GetName(), sizeof(p.szName));
p.dwPID = GetPlayerID();
p.bEmpire = GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(GetX(), GetY());
p.bChannel = g_bChannel;
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGLogin));
değiştir
input_db.cpp
Arat:
TPacketGGLogin p;
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, ch->GetName(), sizeof(p.szName));
p.dwPID = ch->GetPlayerID();
p.bEmpire = ch->GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(ch->GetX(), ch->GetY());
p.bChannel = g_bChannel;
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGLogin));
packet.h
arat
typedef struct SPacketGGLogin
{
BYTE bHeader;
char szName[CHARACTER_NAME_MAX_LEN + 1];
DWORD dwPID;
BYTE bEmpire;
long lMapIndex;
BYTE bChannel;
} TPacketGGLogin;
p2p.cpp
Arat (void P2P_MANAGER::Boot(LPDESC d)):
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, ch->GetName(), sizeof(p.szName));
p.dwPID = ch->GetPlayerID();
p.bEmpire = ch->GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(ch->GetX(), ch->GetY());
p.bChannel = g_bChannel;
d->Packet(&p, sizeof(p));
Değiştir:
[/CODE]
Arat (void P2P_MANAGER::Login(LPDESC d, const TPacketGGLogin * p)):
pkCCI->lMapIndex = p->lMapIndex;
pkCCI->pkDesc = d;
pkCCI->bChannel = p->bChannel;
sys_log(0, "P2P: Login %s", pkCCI->szName);
CGuildManager::instance().P2PLoginMember(pkCCI->dwPID);
CPartyManager::instance().P2PLogin(pkCCI->dwPID, pkCCI->szName);
p2p.h
Arat:
typedef struct _CCI
{
char szName[CHARACTER_NAME_MAX_LEN + 1];
DWORD dwPID;
BYTE bEmpire;
long lMapIndex;
BYTE bChannel;
LPDESC pkDesc;
} CCI;
cmd_general.cpp
müsait biryere ekleyin
---
{ "joy", do_emotion, 0, POS_FIGHTING, GM_PLAYER },
altınada
Client/userinterface/pythonnetworkstreamcommand.cpp
arat
else if (!strcmpi(szCmd, "mobile_auth"))
{
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "OnMobileAuthority", Py_BuildValue("()"));
}
/root
game.py
Arat:
def BINARY_UpdateLovePoint(self, lovePoint):
if self.interface.wndMessenger:
self.interface.wndMessenger.OnUpdateLovePoint(lovePoint)
if self.affectShower:
self.affectShower.OnUpdateLovePoint(lovePoint)
interfaceModule.py
Arat:
def MinimizeWhisperDialog(self, name):
if 0 != name:
self.__MakeWhisperButton(name)
self.CloseWhisperDialog(name)
whisperdialog.py
Arat:
{
"name" : "titlename",
"type" : "text",
"x" : 3,
"y" : 3,
"text" : uiScriptLocale.WHISPER_NAME,
},
uiwhisper.py
Arat:
self.titleName = GetObject("titlename")
Arat:
def OpenWithTarget(self, targetName):
chat.CreateWhisper(targetName)
chat.SetWhisperBoxSize(targetName, self.GetWidth() - 60, self.GetHeight() - 90)
self.chatLine.SetFocus()
self.titleName.SetText(targetName)
self.targetName = targetName
self.textRenderer.SetTargetName(targetName)
self.titleNameEdit.Hide()
self.ignoreButton.Show()
self.reportButton.Show()
self.acceptButton.Hide()
self.gamemasterMark.Hide()
self.minimizeButton.Show()
Arat:
def OpenWithoutTarget(self, event):
self.eventAcceptTarget = event
self.titleName.SetText("")
self.titleNameEdit.SetText("")
self.titleNameEdit.SetFocus()
self.targetName = 0
self.titleNameEdit.Show()
self.ignoreButton.Hide()
self.reportViolentWhisperButton.Hide()
self.acceptButton.Show()
self.minimizeButton.Hide()
Arat:
def AcceptTarget(self):
name = self.titleNameEdit.GetText()
if len(name) <= 0:
self.Close()
return
if None != self.eventAcceptTarget:
self.titleNameEdit.KillFocus()
self.eventAcceptTarget(name)
Arat:
def Close(self):
anlatımda blok ve hata gibi bir problem varsa rardan indirip ekleyebilirsiniz
[/FONT]
char.h aç ve arat
void SetGMLevel();
altına ekle
Kod:
int GetChannel() const;
char.cpp arat
quest::CQuestManager::instance().LevelUp(GetPlayerID());
altına ekle
Kod:
// UpdateP2P TPacketGGLogin p;
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, GetName(), sizeof(p.szName));
p.dwPID = GetPlayerID();
p.bEmpire = GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(GetX(), GetY());
p.bChannel = g_bChannel;
p.iLevel = GetLevel();
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGLogin));
arat
BYTE CHARACTER::GetGMLevel() const
altına ekle
Kod:
int CHARACTER::GetChannel() const{
return g_bChannel;
}
arat
TPacketGGLogin p;
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, GetName(), sizeof(p.szName));
p.dwPID = GetPlayerID();
p.bEmpire = GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(GetX(), GetY());
p.bChannel = g_bChannel;
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGLogin));
değiştir
Kod:
TPacketGGLogin p;
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, GetName(), sizeof(p.szName));
p.dwPID = GetPlayerID();
p.bEmpire = GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(GetX(), GetY());
p.bChannel = g_bChannel;
p.iLevel = GetLevel();
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGLogin));
input_db.cpp
Arat:
TPacketGGLogin p;
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, ch->GetName(), sizeof(p.szName));
p.dwPID = ch->GetPlayerID();
p.bEmpire = ch->GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(ch->GetX(), ch->GetY());
p.bChannel = g_bChannel;
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGLogin));
Kod:
Değiştir:
TPacketGGLogin p;
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, ch->GetName(), sizeof(p.szName));
p.dwPID = ch->GetPlayerID();
p.bEmpire = ch->GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(ch->GetX(), ch->GetY());
p.bChannel = g_bChannel;
p.iLevel = ch->GetLevel();
P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGLogin));
packet.h
arat
typedef struct SPacketGGLogin
{
BYTE bHeader;
char szName[CHARACTER_NAME_MAX_LEN + 1];
DWORD dwPID;
BYTE bEmpire;
long lMapIndex;
BYTE bChannel;
} TPacketGGLogin;
Kod:
Değiştir:typedef struct SPacketGGLogin
{
BYTE bHeader;
char szName[CHARACTER_NAME_MAX_LEN + 1];
DWORD dwPID;
BYTE bEmpire;
long lMapIndex;
BYTE bChannel;
int iLevel;
} TPacketGGLogin;
p2p.cpp
Arat (void P2P_MANAGER::Boot(LPDESC d)):
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, ch->GetName(), sizeof(p.szName));
p.dwPID = ch->GetPlayerID();
p.bEmpire = ch->GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(ch->GetX(), ch->GetY());
p.bChannel = g_bChannel;
d->Packet(&p, sizeof(p));
Değiştir:
Kod:
p.bHeader = HEADER_GG_LOGIN;
strlcpy(p.szName, ch->GetName(), sizeof(p.szName));
p.dwPID = ch->GetPlayerID();
p.bEmpire = ch->GetEmpire();
p.lMapIndex = SECTREE_MANAGER::instance().GetMapIndex(ch->GetX(), ch->GetY());
p.bChannel = g_bChannel;
p.iLevel = ch->GetLevel();
d->Packet(&p, sizeof(p));
Arat (void P2P_MANAGER::Login(LPDESC d, const TPacketGGLogin * p)):
pkCCI->lMapIndex = p->lMapIndex;
pkCCI->pkDesc = d;
pkCCI->bChannel = p->bChannel;
sys_log(0, "P2P: Login %s", pkCCI->szName);
CGuildManager::instance().P2PLoginMember(pkCCI->dwPID);
CPartyManager::instance().P2PLogin(pkCCI->dwPID, pkCCI->szName);
Kod:
Değiştir:
pkCCI->lMapIndex = p->lMapIndex;
pkCCI->pkDesc = d;
pkCCI->bChannel = p->bChannel;
pkCCI->iLevel = p->iLevel;
sys_log(0, "P2P: Login %s", pkCCI->szName);
CGuildManager::instance().P2PLoginMember(pkCCI->dwPID);
CPartyManager::instance().P2PLogin(pkCCI->dwPID, pkCCI->szName);
p2p.h
Arat:
typedef struct _CCI
{
char szName[CHARACTER_NAME_MAX_LEN + 1];
DWORD dwPID;
BYTE bEmpire;
long lMapIndex;
BYTE bChannel;
LPDESC pkDesc;
} CCI;
Kod:
Değiştir:
typedef struct _CCI
{
char szName[CHARACTER_NAME_MAX_LEN + 1];
DWORD dwPID;
BYTE bEmpire;
long lMapIndex;
BYTE bChannel;
LPDESC pkDesc;
int iLevel;
} CCI;
cmd_general.cpp
müsait biryere ekleyin
Kod:
ACMD(do_bilgial){
char arg1[256];
one_argument(argument, arg1, sizeof(arg1));
if (!*arg1)
return;
int iTargetEmpire = 0;
int iTargetLevel = 0;
int iTargetChannel = 0;
LPCHARACTER tch = CHARACTER_MANAGER::instance().FindPC(arg1);
if (tch)
{
iTargetEmpire = (int)tch->GetEmpire();
iTargetLevel = tch->GetLevel();
iTargetChannel = tch->GetChannel();
}
else {
CCI * pkCCI = P2P_MANAGER::instance().Find(arg1);
if (pkCCI)
{
iTargetEmpire = (int)pkCCI->bEmpire;
iTargetLevel = pkCCI->iLevel;
iTargetChannel = (int)pkCCI->bChannel;
}
else {
ch->ChatPacket(CHAT_TYPE_INFO, "Hedef oyuncu: %s suan offline", arg1);
return;
}
}
ch->ChatPacket(CHAT_TYPE_COMMAND, "bilgiver %s %d %d %d", arg1, iTargetEmpire, iTargetLevel, iTargetChannel);
}
Arat
Cmd.cpp
ACMD(do_refine_rod);
altına
[CODE]ACMD(do_bilgial);
---
{ "joy", do_emotion, 0, POS_FIGHTING, GM_PLAYER },
altınada
Kod:
{ "bilgial", do_bilgial, 0, POS_DEAD, GM_PLAYER },
Client/userinterface/pythonnetworkstreamcommand.cpp
arat
else if (!strcmpi(szCmd, "mobile_auth"))
{
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "OnMobileAuthority", Py_BuildValue("()"));
}
Kod:
Ekle:
else if (!strcmpi(szCmd, "bilgiver"))
{
if (5 != TokenVector.size())
{
TraceError("CPythonNetworkStream::ServerCommand(c_szCommand=%s) - Strange Parameter Count : %d", c_szCommand, TokenVector.size());
return;
}
const std::string & c_rstrName = TokenVector[1].c_str();
int iEmpire = atoi(TokenVector[2].c_str());
int iLevel = atoi(TokenVector[3].c_str());
int iChannel = atoi(TokenVector[4].c_str());
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "BINARY_BilgiIsle", Py_BuildValue("(siii)", c_rstrName.c_str(), iEmpire, iLevel, iChannel));
}
/root
game.py
Arat:
def BINARY_UpdateLovePoint(self, lovePoint):
if self.interface.wndMessenger:
self.interface.wndMessenger.OnUpdateLovePoint(lovePoint)
if self.affectShower:
self.affectShower.OnUpdateLovePoint(lovePoint)
Kod:
Ekle:
def BINARY_BilgiIsle(self, targetName, targetEmpire, targetLevel, targetChannel):
self.interface.BilgileriEkle(targetName, targetEmpire, targetLevel, targetChannel)
interfaceModule.py
Arat:
def MinimizeWhisperDialog(self, name):
if 0 != name:
self.__MakeWhisperButton(name)
self.CloseWhisperDialog(name)
Kod:
Altına ekle:
def BilgileriEkle(self, name, empire, level, channel):
try:
dlgWhisper = self.whisperDialogDict[name]
dlgWhisper.SetToolTipForBilgi(name, empire, level, channel)
except:
import dbg, sys
(type, msg, tb)=sys.exc_info()
dbg.TraceError("interface.BilgileriEkle - Failed to find key | %s:%s" % (type, msg))
Arat:
{
"name" : "titlename",
"type" : "text",
"x" : 3,
"y" : 3,
"text" : uiScriptLocale.WHISPER_NAME,
},
Kod:
Üstüne ekle:
{
"name" : "hiddenbutton",
"type" : "button",
"x" : 0,
"y" : 0,
"text" : "",
"default_image" : "d:/ymir work/ui/public/hidden.tga",
"over_image" : "d:/ymir work/ui/public/hidden.tga",
"down_image" : "d:/ymir work/ui/public/hidden.tga",
},
uiwhisper.py
Kod:
importların altına ekle:import uiToolTip
empireList = ["NULL", "Shinsoo", "Chunjo", "Jinno"]
Arat:
self.titleName = GetObject("titlename")
Kod:
Altına ekle:
self.titleHiddenButton = GetObject("hiddenbutton")
Arat:
def OpenWithTarget(self, targetName):
chat.CreateWhisper(targetName)
chat.SetWhisperBoxSize(targetName, self.GetWidth() - 60, self.GetHeight() - 90)
self.chatLine.SetFocus()
self.titleName.SetText(targetName)
self.targetName = targetName
self.textRenderer.SetTargetName(targetName)
self.titleNameEdit.Hide()
self.ignoreButton.Show()
self.reportButton.Show()
self.acceptButton.Hide()
self.gamemasterMark.Hide()
self.minimizeButton.Show()
Kod:
Altına ekle:
self.SetToolTipForBilgi(targetName, 0, 0, 0)
net.SendChatPacket("/bilgial %s" % targetName)
Arat:
def OpenWithoutTarget(self, event):
self.eventAcceptTarget = event
self.titleName.SetText("")
self.titleNameEdit.SetText("")
self.titleNameEdit.SetFocus()
self.targetName = 0
self.titleNameEdit.Show()
self.ignoreButton.Hide()
self.reportViolentWhisperButton.Hide()
self.acceptButton.Show()
self.minimizeButton.Hide()
Kod:
Altına ekle:
self.titleHiddenButton.Hide()
Arat:
def AcceptTarget(self):
name = self.titleNameEdit.GetText()
if len(name) <= 0:
self.Close()
return
if None != self.eventAcceptTarget:
self.titleNameEdit.KillFocus()
self.eventAcceptTarget(name)
Kod:
Değiştir:
def AcceptTarget(self):
name = self.titleNameEdit.GetText()
if len(name) <= 0:
self.Close()
return
if None != self.eventAcceptTarget:
self.titleNameEdit.KillFocus()
self.eventAcceptTarget(name)
if not self.titleHiddenButton.IsShow():
self.titleHiddenButton.Show()
self.SetToolTipForBilgi(name, 0, 0, 0)
net.SendChatPacket("/bilgial %s" % name)
Arat:
def Close(self):
Kod:
Üstüne ekle:
def __CreateGameTypeToolTip(self, name, empire, level, channel):
tooltipItem = uiToolTip.ToolTip()
tooltipItem.ClearToolTip()
if not empire and not level and not channel:
tooltipItem.AppendTextLine("Oyuncu %s'in bilgileri henuz hazir degil." % name)
else:
tooltipItem.AppendTextLine("Krallik: %s Kralligi" % empireList[empire])
tooltipItem.AppendTextLine("Seviye: %d" % level)
tooltipItem.AppendTextLine("Kanal: %d" % channel)
return tooltipItem
def SetToolTipForBilgi(self, name, empire, level, channel):
self.titleHiddenButton.SetToolTipWindow(self.__CreateGameTypeToolTip(name, empire, level, channel))
anlatımda blok ve hata gibi bir problem varsa rardan indirip ekleyebilirsiniz
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[/FONT]
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Moderatör tarafında düzenlendi:
- Katılım
- 17 Mar 2015
- Konular
- 75
- Mesajlar
- 1,326
- Reaksiyon Skoru
- 215
- Altın Konu
- 0
- Başarım Puanı
- 92
- Yaş
- 32
- TM Yaşı
- 11 Yıl 1 Ay 7 Gün
- MmoLira
- 0
- DevLira
- 0
Teşekkürler 
- Katılım
- 2 Şub 2010
- Konular
- 226
- Mesajlar
- 2,606
- Online süresi
- 7g 14267s
- Reaksiyon Skoru
- 533
- Altın Konu
- 0
- Başarım Puanı
- 231
- TM Yaşı
- 16 Yıl 2 Ay 20 Gün
- MmoLira
- 2,776
- DevLira
- 3
teşekkürler güzel bir sistem
- Katılım
- 13 Eyl 2013
- Konular
- 19
- Mesajlar
- 327
- Reaksiyon Skoru
- 52
- Altın Konu
- 0
- Başarım Puanı
- 54
- TM Yaşı
- 12 Yıl 7 Ay 12 Gün
- MmoLira
- -1
- DevLira
- 0
tebrikler,fakat sadece py ile basitçe yapılır bu kadar işleve gerek yok aslında.ama profesyonellik diyosan o ayrı
Son düzenleme:
Şu an konuyu görüntüleyenler (Toplam : 1, Üye: 0, Misafir: 1)
Benzer konular
- Cevaplar
- 0
- Görüntüleme
- 151
- Cevaplar
- 2
- Görüntüleme
- 123
- Cevaplar
- 8
- Görüntüleme
- 283
- Cevaplar
- 14
- Görüntüleme
- 1K
- Cevaplar
- 18
- Görüntüleme
- 1K



