- Katılım
- 4 Ağu 2010
- Konular
- 356
- Mesajlar
- 4,122
- Çözüm
- 74
- Online süresi
- 3mo 14d
- Reaksiyon Skoru
- 2,235
- Altın Konu
- 82
- Başarım Puanı
- 292
- Yaş
- 32
- MmoLira
- 3,067
- DevLira
- 138
HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!
Root/InterFaceModule.py
Arat :
Altına Ekle :
Arat :
Altına Ekle :
Arat ve Sil:
Arat :
Öncesine Ekle :
Arat :
Altına Ekle :
Root/Game.py Açılır:
Arat :
Altına Ekle :
Root/UiTip.py Açılır :
Arat :
Altına Ekle :
Nasıl Kullanırım?:
Cpp'lerinize Ekleyin:
------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------
Client/SRC/UserInterface/PythonNetworkStreamCommand.cpp Aç:
EKLE:
Client/SRC/PythonApplicationModule.cpp Aç :
En Alt Kısımlara Ekle :
Ayrıca Bu Sistem İçin Yeni Bir CHAT_TYPE Oluşturup PhaseGame.cpp İçinde O Chat_Type......'nızın içine Bunları Ekleyeceksiniz.
Arat :
İçine Ekle :
KANIT :
Arat :
Kod:
self.bigBoard = None
Altına Ekle :
Kod:
if app.ENABLE_12ZI:
self.missionBoard = None
Arat :
Kod:
self.bigBoard = uiTip.BigBoard()
self.bigBoard.Hide()
Altına Ekle :
Kod:
if app.ENABLE_12ZI:
self.missionBoard = uiTip.MissionBoard()
self.missionBoard.Hide()
Arat ve Sil:
Kod:
self.__MakeTipBoard()
Arat :
Kod:
self.__MakeMessengerWindow()
Öncesine Ekle :
Kod:
self.__MakeTipBoard() # ENABLE_12ZI
Arat :
Kod:
del self.wndItemSelect
Altına Ekle :
Kod:
if app.ENABLE_12ZI:
del self.missionBoard
Root/Game.py Açılır:
Arat :
Kod:
def BINARY_SetBigMessage(self, message):
self.interface.bigBoard.SetTip(message)
Altına Ekle :
Kod:
if app.ENABLE_12ZI:
def BINARY_SetMissionMessage(self, message):
if self.interface:
self.interface.missionBoard.SetMission(message)
def BINARY_SetSubMissionMessage(self, message):
if self.interface:
self.interface.missionBoard.SetSubMission(message)
def BINARY_CleanMissionMessage(self):
if self.interface:
self.interface.missionBoard.CleanMission()
Root/UiTip.py Açılır :
Arat :
Kod:
class BigTextBar(TextBar):
def __init__(self, width, height, fontSize):
ui.Window.__init__(self)
self.handle = grp.CreateBigTextBar(width, height, fontSize)
def __del__(self):
ui.Window.__del__(self)
grp.DestroyTextBar(self.handle)
Altına Ekle :
Kod:
if app.ENABLE_12ZI:
class MissionBoard(ui.Bar):
FONT_HEIGHT = 15
LINE_HEIGHT = FONT_HEIGHT + 5
STEP_HEIGHT = LINE_HEIGHT + 5
LONG_TEXT_START_X = 300
SCREEN_WIDTH = wndMgr.GetScreenWidth()
def __init__(self):
ui.Bar.__init__(self)
self.AddFlag("not_pick")
self.missionText = None
self.missionFullText = None
self.curPos = 0
self.dstPos = -5
self.nextScrollTime = 0
self.flowMode = False
self.ScrollStartTime = 0.0
self.SetPosition(0, 100)
self.SetSize(self.SCREEN_WIDTH, 35)
self.SetColor(grp.GenerateColor(0.0, 0.0, 0.0, 0.5))
self.SetWindowHorizontalAlignCenter()
self.__CreateTextBar()
def __del__(self):
ui.Bar.__del__(self)
def __CreateTextBar(self):
x, y = self.GetGlobalPosition()
self.textBar = BigTextBar(self.SCREEN_WIDTH * 2, 300, self.FONT_HEIGHT)
self.textBar.SetParent(self)
self.textBar.SetPosition(6, 8)
self.textBar.SetTextColor(242, 231, 193)
self.textBar.SetClipRect(0, y, self.SCREEN_WIDTH, y + 8 + self.STEP_HEIGHT)
self.textBar.Show()
def CleanMission(self):
self.missionText = None
self.missionFullText = None
self.textBar.ClearBar()
self.Hide()
def __RefreshBoard(self):
self.textBar.ClearBar()
if self.missionFullText:
(text_width, text_height) = self.textBar.GetTextExtent(self.missionFullText)
if text_width>self.SCREEN_WIDTH:
self.textBar.TextOut(0, (self.STEP_HEIGHT - 8 - text_height) / 2, self.missionFullText)
self.flowMode = True
else:
self.textBar.TextOut((wndMgr.GetScreenWidth() - text_width) / 2, (self.STEP_HEIGHT - 8 - text_height) / 2, self.missionFullText)
self.flowMode = False
def SetMission(self, text):
self.__AppendText(text)
self.__RefreshBoard()
if self.flowMode:
self.dstPos = -text_width
self.curPos = self.LONG_TEXT_START_X
self.textBar.SetPosition(3 + self.curPos, 8)
else:
self.dstPos = 0
self.curPos = self.STEP_HEIGHT
self.textBar.SetPosition(3, 8 + self.curPos)
if not self.IsShow():
self.Show()
def SetSubMission(self, text):
self.missionFullText = self.missionText + text
preflowMode = self.flowMode
self.__RefreshBoard()
if preflowMode != self.flowMode:
if self.flowMode:
self.dstPos = -text_width
self.curPos = self.LONG_TEXT_START_X
self.textBar.SetPosition(3 + self.curPos, 8)
else:
self.dstPos = 0
self.curPos = self.STEP_HEIGHT
self.textBar.SetPosition(3, 8 + self.curPos)
def __AppendText(self, text):
if text == "":
self.CleanMission()
return
self.missionText = text
self.missionFullText = text
def OnUpdate(self):
if self.missionFullText == None:
self.Hide()
return
if self.dstPos < self.curPos:
self.curPos -= 1
if self.flowMode:
self.textBar.SetPosition(3 + self.curPos, 8)
else:
self.textBar.SetPosition(3, 8 + self.curPos)
else:
if self.flowMode:
self.curPos = self.SCREEN_WIDTH
Nasıl Kullanırım?:
Cpp'lerinize Ekleyin:
------------------------------------------------------------------------------------------------------------------------------------
Kod:
ChatPacket(CHAT_TYPE_COMMAND, "SetMissionMessage %s", "VS. Ending Soon");
ChatPacket(CHAT_TYPE_COMMAND, "SetSubMission %s", "VS. is over. The world begins again under...");
ChatPacket(CHAT_TYPE_COMMAND, "CleanMission");
Client/SRC/UserInterface/PythonNetworkStreamCommand.cpp Aç:
EKLE:
Kod:
#ifdef ENABLE_12ZI
else if (!strcmpi(szCmd, "SetMissionMessage"))
{
if (2 != TokenVector.size())
{
TraceError("CPythonNetworkStream::ServerCommand(c_szCommand=%s) - Strange Parameter Count : %s", c_szCommand);
return;
}
const std::string & c_rstrMessage = TokenVector[1].c_str();
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "BINARY_SetMissionMessage", Py_BuildValue("(s)", c_rstrMessage.c_str()));
}
else if (!strcmpi(szCmd, "SetSubMissionMessage"))
{
if (2 != TokenVector.size())
{
TraceError("CPythonNetworkStream::ServerCommand(c_szCommand=%s) - Strange Parameter Count : %s", c_szCommand);
return;
}
const std::string & c_rstrMessage = TokenVector[1].c_str();
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "BINARY_SetSubMissionMessage", Py_BuildValue("(s)", c_rstrMessage.c_str()));
}
else if (!strcmpi(szCmd, "CleanMissionMessage"))
{
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "BINARY_CleanMissionMessage", Py_BuildValue("()"));
}
#endif
Client/SRC/PythonApplicationModule.cpp Aç :
En Alt Kısımlara Ekle :
Kod:
#ifdef ENABLE_12ZI
PyModule_AddIntConstant(poModule, "ENABLE_12ZI", 1);
#else
PyModule_AddIntConstant(poModule, "ENABLE_12ZI", 0);
#endif
Ayrıca Bu Sistem İçin Yeni Bir CHAT_TYPE Oluşturup PhaseGame.cpp İçinde O Chat_Type......'nızın içine Bunları Ekleyeceksiniz.
Arat :
Kod:
bool CPythonNetworkStream::RecvChatPacket()
İçine Ekle :
Kod:
else (CHAT_TYPE_MISSION == kChat.type)
{
if (uChatSize)
PyCallClassMemberFunc (m_apoPhaseWnd [PHASE_WINDOW_GAME], "BINARY_SetMissionMessage", Py_BuildValue ("(s)", buf));
else
PyCallClassMemberFunc (m_apoPhaseWnd [PHASE_WINDOW_GAME], "BINARY_CleanMissionMessage", Py_BuildValue ("()"));
}
else (CHAT_TYPE_SUB_MISSION == kChat.type)
{
PyCallClassMemberFunc (m_apoPhaseWnd [PHASE_WINDOW_GAME], "BINARY_SetSubMissionMessage", Py_BuildValue ("(s)", buf));
}
KANIT :
Son düzenleme:
- Katılım
- 8 Eki 2017
- Konular
- 2,420
- Mesajlar
- 10,263
- Çözüm
- 89
- Online süresi
- 4mo 8h
- Reaksiyon Skoru
- 4,207
- Altın Konu
- 244
- Başarım Puanı
- 422
- MmoLira
- 7,171
- DevLira
- 15
Teşekkürler Yakında Warezde Olur Zodyak 

- Katılım
- 20 Eki 2017
- Konular
- 468
- Mesajlar
- 9,380
- Çözüm
- 271
- Online süresi
- 11mo 27d
- Reaksiyon Skoru
- 8,233
- Altın Konu
- 47
- TM Yaşı
- 8 Yıl 7 Ay 29 Gün
- Başarım Puanı
- 326
- Yaş
- 25
- MmoLira
- 97,721
- DevLira
- 242
Teşekkürler
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 8
- Görüntüleme
- 817
Altın Konu
Oyun içi imsakiye & iftar/sahur alarmı
- Cevaplar
- 29
- Görüntüleme
- 3K
- Cevaplar
- 8
- Görüntüleme
- 850
- Cevaplar
- 4
- Görüntüleme
- 954






