Otomatik Bağırma Sistemi

  • Konuyu açan Konuyu açan TheAdmin33
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 33
  • Gösterim Gösterim 3K
karakter oyundan çıkınca (çıkış ile) veya karakter değiştirince bağırmaya devam ediyordu. bende bu yolla fixledim. kullanmak isteyenler kullanabilirler. sistem için teşekkürler.

uisystem.py:
Genişlet Daralt Kopyala
arat

    def __ClickChangeCharacterButton(self):
        self.Close()

        net.ExitGame()

altına ekle

        constInfo.auto_shout_text = ""
        constInfo.auto_shout_status = 0

arat

    def __ClickLogOutButton(self):
        if SYSTEM_MENU_FOR_PORTAL:
            if app.loggined:
                self.Close()
                net.ExitApplication()
            else:
                self.Close()
                net.LogOutGame()
        else:
            self.Close()
            net.LogOutGame()

altına ekle

        constInfo.auto_shout_text = ""
        constInfo.auto_shout_status = 0

arat

    def __ClickExitButton(self):
        self.Close()
        net.ExitApplication()

altına ekle

        constInfo.auto_shout_text = ""
        constInfo.auto_shout_status = 0
 
game.py de değişiklik yapmaya gerek yokmuş aşağıdakileri uygulayınca oluyor, isme tıklanıldığında pm ekranı açılır hale geliyor

input_main.cpp:
Genişlet Daralt Kopyala
//Arat;

    int len = snprintf(chatbuf, sizeof(chatbuf), "%s : %s", ch->GetName(), buf);


//Değiştir;

    if (CHAT_TYPE_SHOUT == pinfo->type)
    {
        len = snprintf(chatbuf, sizeof(chatbuf), "|cFF98FF33|h[Lv %d] |Hchattanpmyolla:%s|h%s|h|r : %s", ch->GetLevel(), ch->GetName(), ch->GetName(), buf);
    }
    else
    {
        len = snprintf(chatbuf, sizeof(chatbuf), "%s : %s", ch->GetName(), buf);
    }

interfacemodule.py:
Genişlet Daralt Kopyala
#Arat;

    def MakeHyperlinkTooltip(self, hyperlink):

        tokens = hyperlink.split(":")

        if tokens and len(tokens):

            type = tokens[0]

            if "item" == type:

                self.hyperlinkItemTooltip.SetHyperlinkItem(tokens)


#Değiştir;

    def MakeHyperlinkTooltip(self, hyperlink):

        tokens = hyperlink.split(":")

        if tokens and len(tokens):

            type = tokens[0]

            if "item" == type:

                self.hyperlinkItemTooltip.SetHyperlinkItem(tokens)

            elif "chattanpmyolla" == type:

                self.OpenWhisperDialog(str(tokens[1]))
Bunu uyguladığımda işe yarıyor ancak normal bağırmadaki pm diğer ch lerde gözükürken sistemdeki bağırma diğer chlerde gözükmüyor
 
uishout.py:
Genişlet Daralt Kopyala
import ui
import chat
import net
import constInfo
from _weakref import proxy
from itertools import islice
import app
import wndMgr
import player
import locale

class ShoutManager(ui.ScriptWindow):

    def __init__(self):
        ui.ScriptWindow.__init__(self)
        self.board = None
        self.LoadWindow()

    def __del__(self):
        self.Destroy()
        ui.ScriptWindow.__del__(self)

    def LoadWindow(self):
        try:
            pyScrLoader = ui.PythonScriptLoader()
            pyScrLoader.LoadScriptFile(self, "UIScript/shout.py")
        except:
            import exception
            exception.Abort("DiceClass.LoadDialog.LoadScript")

        try:
            GetObject=self.GetChild
            self.board = GetObject("board")
            self.baslat = GetObject("baslat")
            self.durdur = GetObject("durdur")
            self.temizle = GetObject("temizle")
            self.bilgi = GetObject("bilgi")
            self.yazi = GetObject("CommentValue")
            
            self.baslat.SetEvent(ui.__mem_func__(self.Baslat))
            self.durdur.SetEvent(ui.__mem_func__(self.Durdur))
            self.temizle.SetEvent(ui.__mem_func__(self.Temizle))
            
            self.board.SetCloseEvent(ui.__mem_func__(self.__OnCloseButtonClick))

        except:
            import exception
            exception.Abort("DiceClass.LoadDialog.BindObject")

    def Destroy(self):
        self.ClearDictionary()
        self.titleBar = None

    def Open(self):   
        if constInfo.auto_shout_status == 1:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cff00ff00|H|h (Durum: Aktif)")
        else:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cffFDD017|H|h (Durum: Pasif)")
        
        self.Show()
        self.SetCenterPosition()
        
    def OnUpdate(self):
        if constInfo.auto_shout_status == 1:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cff00ff00|H|h (Durum: Aktif)")
        else:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cffFDD017|H|h (Durum: Pasif)")

    
    def Temizle(self):
        self.yazi.SetText("")
        
    def Baslat(self):
        constInfo.auto_shout_text = self.yazi.GetText()
        constInfo.auto_shout_status = 1
        
    def Durdur(self):
        constInfo.auto_shout_text = ""
        constInfo.auto_shout_status = 0

    def Close(self):
        self.Hide()

            
    def __OnCloseButtonClick(self):
        self.Hide()

    def OnPressEscapeKey(self):
        self.Close()

shout.py:
Genişlet Daralt Kopyala
import uiScriptLocale
import item
import app
import localeInfo

ROOT_PATH = "d:/ymir work/ui/public/"

GOLD_COLOR    = 0xFFFEE3AE

BOARD_WIDTH = 500
BOARD_HEIGTH = 185
window = {
    "name" : "shout",

    "x" : 0,
    "y" : 0,

    "style" : ("movable", "float",),

    "width" : BOARD_WIDTH,
    "height" : BOARD_HEIGTH,

    "children" :
    (
        {
            "name" : "board",
            "type" : "board_with_titlebar",

            "x" : 0,
            "y" : 0,
            "width" : 500,
            "height" : 185,
                    
            "title" : "Oto bagirma",
                    
            "children" :
            (
                {
                    "name" : "oyuncu",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 35,
                    "width" : 470,
                    "height" : 100,
                            
                    "children" :
                            
                    (
                        {
                            "name" : "bilgi",
                            "type" : "text",
                            "x" : 0,
                            "y" : 5,
                            "text" : "Gönderilecek mesaji yazin",
                            'horizontal_align': 'center',
                            'text_horizontal_align': 'center',
                        },
                                
                        {
                            "name" : "yazibar",
                            "type" : "slotbar",
                            "x" : 10,
                            "y" : 25,
                            "width" : 450,
                            "height" : 65,

                            "children" :
                            (
                                {
                                    "name" : "CommentValue",
                                    "type" : "editline",
                                    "x" : 2,
                                    "y" : 3,
                                    "width" : 440,
                                    "height" : 65,
                                    "input_limit" : 512,
                                    "text" : "",
                                },
                            ),
                        },
                                
                    ),
                },
                        
                {
                    "name" : "alttextbutton",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 135,
                    "width" : 470,
                    "height" : 40,
                            
                    "children" :
                    (
                        # {
                            # "name" : "baslat",
                            # "type" : "button",
                            # "x" : 5,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",
                            # "text" : "Baslat",
                        # },
                        # {
                            # "name" : "durdur",
                            # "type" : "button",
                            # "x" : 5+155,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",
                            # "text" : "Durdur",
                        # },
                                
                        # {
                            # "name" : "temizle",
                            # "type" : "button",
                            # "x" : 5+310,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",

                            # "text" : "Temizle",
                        # },
                    ),
                },
            ),
        },
    ),
}

Bunlara rağmen dogru fakat böyle bir hata alıyorum

DiceClass.LoadDialog.BindObject - <type 'exceptions.KeyError'>:'baslat'
 
uishout.py:
Genişlet Daralt Kopyala
import ui
import chat
import net
import constInfo
from _weakref import proxy
from itertools import islice
import app
import wndMgr
import player
import locale

class ShoutManager(ui.ScriptWindow):

    def __init__(self):
        ui.ScriptWindow.__init__(self)
        self.board = None
        self.LoadWindow()

    def __del__(self):
        self.Destroy()
        ui.ScriptWindow.__del__(self)

    def LoadWindow(self):
        try:
            pyScrLoader = ui.PythonScriptLoader()
            pyScrLoader.LoadScriptFile(self, "UIScript/shout.py")
        except:
            import exception
            exception.Abort("DiceClass.LoadDialog.LoadScript")

        try:
            GetObject=self.GetChild
            self.board = GetObject("board")
            self.baslat = GetObject("baslat")
            self.durdur = GetObject("durdur")
            self.temizle = GetObject("temizle")
            self.bilgi = GetObject("bilgi")
            self.yazi = GetObject("CommentValue")
           
            self.baslat.SetEvent(ui.__mem_func__(self.Baslat))
            self.durdur.SetEvent(ui.__mem_func__(self.Durdur))
            self.temizle.SetEvent(ui.__mem_func__(self.Temizle))
           
            self.board.SetCloseEvent(ui.__mem_func__(self.__OnCloseButtonClick))

        except:
            import exception
            exception.Abort("DiceClass.LoadDialog.BindObject")

    def Destroy(self):
        self.ClearDictionary()
        self.titleBar = None

    def Open(self):  
        if constInfo.auto_shout_status == 1:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cff00ff00|H|h (Durum: Aktif)")
        else:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cffFDD017|H|h (Durum: Pasif)")
       
        self.Show()
        self.SetCenterPosition()
       
    def OnUpdate(self):
        if constInfo.auto_shout_status == 1:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cff00ff00|H|h (Durum: Aktif)")
        else:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cffFDD017|H|h (Durum: Pasif)")

   
    def Temizle(self):
        self.yazi.SetText("")
       
    def Baslat(self):
        constInfo.auto_shout_text = self.yazi.GetText()
        constInfo.auto_shout_status = 1
       
    def Durdur(self):
        constInfo.auto_shout_text = ""
        constInfo.auto_shout_status = 0

    def Close(self):
        self.Hide()

           
    def __OnCloseButtonClick(self):
        self.Hide()

    def OnPressEscapeKey(self):
        self.Close()

shout.py:
Genişlet Daralt Kopyala
import uiScriptLocale
import item
import app
import localeInfo

ROOT_PATH = "d:/ymir work/ui/public/"

GOLD_COLOR    = 0xFFFEE3AE

BOARD_WIDTH = 500
BOARD_HEIGTH = 185
window = {
    "name" : "shout",

    "x" : 0,
    "y" : 0,

    "style" : ("movable", "float",),

    "width" : BOARD_WIDTH,
    "height" : BOARD_HEIGTH,

    "children" :
    (
        {
            "name" : "board",
            "type" : "board_with_titlebar",

            "x" : 0,
            "y" : 0,
            "width" : 500,
            "height" : 185,
                   
            "title" : "Oto bagirma",
                   
            "children" :
            (
                {
                    "name" : "oyuncu",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 35,
                    "width" : 470,
                    "height" : 100,
                           
                    "children" :
                           
                    (
                        {
                            "name" : "bilgi",
                            "type" : "text",
                            "x" : 0,
                            "y" : 5,
                            "text" : "Gönderilecek mesaji yazin",
                            'horizontal_align': 'center',
                            'text_horizontal_align': 'center',
                        },
                               
                        {
                            "name" : "yazibar",
                            "type" : "slotbar",
                            "x" : 10,
                            "y" : 25,
                            "width" : 450,
                            "height" : 65,

                            "children" :
                            (
                                {
                                    "name" : "CommentValue",
                                    "type" : "editline",
                                    "x" : 2,
                                    "y" : 3,
                                    "width" : 440,
                                    "height" : 65,
                                    "input_limit" : 512,
                                    "text" : "",
                                },
                            ),
                        },
                               
                    ),
                },
                       
                {
                    "name" : "alttextbutton",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 135,
                    "width" : 470,
                    "height" : 40,
                           
                    "children" :
                    (
                        # {
                            # "name" : "baslat",
                            # "type" : "button",
                            # "x" : 5,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",
                            # "text" : "Baslat",
                        # },
                        # {
                            # "name" : "durdur",
                            # "type" : "button",
                            # "x" : 5+155,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",
                            # "text" : "Durdur",
                        # },
                               
                        # {
                            # "name" : "temizle",
                            # "type" : "button",
                            # "x" : 5+310,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",

                            # "text" : "Temizle",
                        # },
                    ),
                },
            ),
        },
    ),
}

Bunlara rağmen dogru fakat böyle bir hata alıyorum

DiceClass.LoadDialog.BindObject - <type 'exceptions.KeyError'>:'baslat'

shout.py:
Genişlet Daralt Kopyala
import uiScriptLocale
import item
import app
import localeInfo

ROOT_PATH = "d:/ymir work/ui/public/"

GOLD_COLOR    = 0xFFFEE3AE

BOARD_WIDTH = 500
BOARD_HEIGTH = 185
window = {
    "name" : "shout",

    "x" : 0,
    "y" : 0,

    "style" : ("movable", "float",),

    "width" : BOARD_WIDTH,
    "height" : BOARD_HEIGTH,

    "children" :
    (
        {
            "name" : "board",
            "type" : "board_with_titlebar",

            "x" : 0,
            "y" : 0,
            "width" : 500,
            "height" : 185,
                    
            "title" : "Oto bagirma",
                    
            "children" :
            (
                {
                    "name" : "oyuncu",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 35,
                    "width" : 470,
                    "height" : 100,
                            
                    "children" :
                            
                    (
                        {
                            "name" : "bilgi",
                            "type" : "text",
                            "x" : 0,
                            "y" : 5,
                            "text" : "Gönderilecek mesaji yazin",
                            'horizontal_align': 'center',
                            'text_horizontal_align': 'center',
                        },
                                
                        {
                            "name" : "yazibar",
                            "type" : "slotbar",
                            "x" : 10,
                            "y" : 25,
                            "width" : 450,
                            "height" : 65,

                            "children" :
                            (
                                {
                                    "name" : "CommentValue",
                                    "type" : "editline",
                                    "x" : 2,
                                    "y" : 3,
                                    "width" : 440,
                                    "height" : 65,
                                    "input_limit" : 512,
                                    "text" : "",
                                },
                            ),
                        },
                                
                    ),
                },
                        
                {
                    "name" : "alttextbutton",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 135,
                    "width" : 470,
                    "height" : 40,
                            
                    "children" :
                    (
                        {
                            "name" : "baslat",
                            "type" : "button",
                            "x" : 5,
                            "y" : 8,
                            "default_image" : "d:/ymir work/ui/buton/1.tga",
                            "over_image" : "d:/ymir work/ui/buton/2.tga",
                            "down_image" : "d:/ymir work/ui/buton/3.tga",
                            "text" : "Baslat",
                        },
                        {
                            "name" : "durdur",
                            "type" : "button",
                            "x" : 5+155,
                            "y" : 8,
                            "default_image" : "d:/ymir work/ui/buton/1.tga",
                            "over_image" : "d:/ymir work/ui/buton/2.tga",
                            "down_image" : "d:/ymir work/ui/buton/3.tga",
                            "text" : "Durdur",
                        },
                                
                        {
                            "name" : "temizle",
                            "type" : "button",
                            "x" : 5+310,
                            "y" : 8,
                            "default_image" : "d:/ymir work/ui/buton/1.tga",
                            "over_image" : "d:/ymir work/ui/buton/2.tga",
                            "down_image" : "d:/ymir work/ui/buton/3.tga",

                            "text" : "Temizle",
                        },
                    ),
                },
            ),
        },
    ),
}

shout.py bununla değiştir
 
shout.py:
Genişlet Daralt Kopyala
import uiScriptLocale
import item
import app
import localeInfo

ROOT_PATH = "d:/ymir work/ui/public/"

GOLD_COLOR    = 0xFFFEE3AE

BOARD_WIDTH = 500
BOARD_HEIGTH = 185
window = {
    "name" : "shout",

    "x" : 0,
    "y" : 0,

    "style" : ("movable", "float",),

    "width" : BOARD_WIDTH,
    "height" : BOARD_HEIGTH,

    "children" :
    (
        {
            "name" : "board",
            "type" : "board_with_titlebar",

            "x" : 0,
            "y" : 0,
            "width" : 500,
            "height" : 185,
                  
            "title" : "Oto bagirma",
                  
            "children" :
            (
                {
                    "name" : "oyuncu",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 35,
                    "width" : 470,
                    "height" : 100,
                          
                    "children" :
                          
                    (
                        {
                            "name" : "bilgi",
                            "type" : "text",
                            "x" : 0,
                            "y" : 5,
                            "text" : "Gönderilecek mesaji yazin",
                            'horizontal_align': 'center',
                            'text_horizontal_align': 'center',
                        },
                              
                        {
                            "name" : "yazibar",
                            "type" : "slotbar",
                            "x" : 10,
                            "y" : 25,
                            "width" : 450,
                            "height" : 65,

                            "children" :
                            (
                                {
                                    "name" : "CommentValue",
                                    "type" : "editline",
                                    "x" : 2,
                                    "y" : 3,
                                    "width" : 440,
                                    "height" : 65,
                                    "input_limit" : 512,
                                    "text" : "",
                                },
                            ),
                        },
                              
                    ),
                },
                      
                {
                    "name" : "alttextbutton",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 135,
                    "width" : 470,
                    "height" : 40,
                          
                    "children" :
                    (
                        {
                            "name" : "baslat",
                            "type" : "button",
                            "x" : 5,
                            "y" : 8,
                            "default_image" : "d:/ymir work/ui/buton/1.tga",
                            "over_image" : "d:/ymir work/ui/buton/2.tga",
                            "down_image" : "d:/ymir work/ui/buton/3.tga",
                            "text" : "Baslat",
                        },
                        {
                            "name" : "durdur",
                            "type" : "button",
                            "x" : 5+155,
                            "y" : 8,
                            "default_image" : "d:/ymir work/ui/buton/1.tga",
                            "over_image" : "d:/ymir work/ui/buton/2.tga",
                            "down_image" : "d:/ymir work/ui/buton/3.tga",
                            "text" : "Durdur",
                        },
                              
                        {
                            "name" : "temizle",
                            "type" : "button",
                            "x" : 5+310,
                            "y" : 8,
                            "default_image" : "d:/ymir work/ui/buton/1.tga",
                            "over_image" : "d:/ymir work/ui/buton/2.tga",
                            "down_image" : "d:/ymir work/ui/buton/3.tga",

                            "text" : "Temizle",
                        },
                    ),
                },
            ),
        },
    ),
}

shout.py bununla değiştir
Yok hocam tekrar aynı hatayı verdi. thinboard_circle yokmuş ekledim class olarak
 
Son düzenleme:
uishout.py:
Genişlet Daralt Kopyala
import ui
import chat
import net
import constInfo
from _weakref import proxy
from itertools import islice
import app
import wndMgr
import player
import locale

class ShoutManager(ui.ScriptWindow):

    def __init__(self):
        ui.ScriptWindow.__init__(self)
        self.board = None
        self.LoadWindow()

    def __del__(self):
        self.Destroy()
        ui.ScriptWindow.__del__(self)

    def LoadWindow(self):
        try:
            pyScrLoader = ui.PythonScriptLoader()
            pyScrLoader.LoadScriptFile(self, "UIScript/shout.py")
        except:
            import exception
            exception.Abort("DiceClass.LoadDialog.LoadScript")

        try:
            GetObject=self.GetChild
            self.board = GetObject("board")
            self.baslat = GetObject("baslat")
            self.durdur = GetObject("durdur")
            self.temizle = GetObject("temizle")
            self.bilgi = GetObject("bilgi")
            self.yazi = GetObject("CommentValue")
           
            self.baslat.SetEvent(ui.__mem_func__(self.Baslat))
            self.durdur.SetEvent(ui.__mem_func__(self.Durdur))
            self.temizle.SetEvent(ui.__mem_func__(self.Temizle))
           
            self.board.SetCloseEvent(ui.__mem_func__(self.__OnCloseButtonClick))

        except:
            import exception
            exception.Abort("DiceClass.LoadDialog.BindObject")

    def Destroy(self):
        self.ClearDictionary()
        self.titleBar = None

    def Open(self):  
        if constInfo.auto_shout_status == 1:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cff00ff00|H|h (Durum: Aktif)")
        else:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cffFDD017|H|h (Durum: Pasif)")
       
        self.Show()
        self.SetCenterPosition()
       
    def OnUpdate(self):
        if constInfo.auto_shout_status == 1:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cff00ff00|H|h (Durum: Aktif)")
        else:
            self.bilgi.SetText("|cff00ccff|H|h Gönderilecek mesajý yazýn." + "|cffFDD017|H|h (Durum: Pasif)")

   
    def Temizle(self):
        self.yazi.SetText("")
       
    def Baslat(self):
        constInfo.auto_shout_text = self.yazi.GetText()
        constInfo.auto_shout_status = 1
       
    def Durdur(self):
        constInfo.auto_shout_text = ""
        constInfo.auto_shout_status = 0

    def Close(self):
        self.Hide()

           
    def __OnCloseButtonClick(self):
        self.Hide()

    def OnPressEscapeKey(self):
        self.Close()

shout.py:
Genişlet Daralt Kopyala
import uiScriptLocale
import item
import app
import localeInfo

ROOT_PATH = "d:/ymir work/ui/public/"

GOLD_COLOR    = 0xFFFEE3AE

BOARD_WIDTH = 500
BOARD_HEIGTH = 185
window = {
    "name" : "shout",

    "x" : 0,
    "y" : 0,

    "style" : ("movable", "float",),

    "width" : BOARD_WIDTH,
    "height" : BOARD_HEIGTH,

    "children" :
    (
        {
            "name" : "board",
            "type" : "board_with_titlebar",

            "x" : 0,
            "y" : 0,
            "width" : 500,
            "height" : 185,
                   
            "title" : "Oto bagirma",
                   
            "children" :
            (
                {
                    "name" : "oyuncu",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 35,
                    "width" : 470,
                    "height" : 100,
                           
                    "children" :
                           
                    (
                        {
                            "name" : "bilgi",
                            "type" : "text",
                            "x" : 0,
                            "y" : 5,
                            "text" : "Gönderilecek mesaji yazin",
                            'horizontal_align': 'center',
                            'text_horizontal_align': 'center',
                        },
                               
                        {
                            "name" : "yazibar",
                            "type" : "slotbar",
                            "x" : 10,
                            "y" : 25,
                            "width" : 450,
                            "height" : 65,

                            "children" :
                            (
                                {
                                    "name" : "CommentValue",
                                    "type" : "editline",
                                    "x" : 2,
                                    "y" : 3,
                                    "width" : 440,
                                    "height" : 65,
                                    "input_limit" : 512,
                                    "text" : "",
                                },
                            ),
                        },
                               
                    ),
                },
                       
                {
                    "name" : "alttextbutton",
                    "type" : "thinboard_circle",

                    "x" : 15,
                    "y" : 135,
                    "width" : 470,
                    "height" : 40,
                           
                    "children" :
                    (
                        # {
                            # "name" : "baslat",
                            # "type" : "button",
                            # "x" : 5,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",
                            # "text" : "Baslat",
                        # },
                        # {
                            # "name" : "durdur",
                            # "type" : "button",
                            # "x" : 5+155,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",
                            # "text" : "Durdur",
                        # },
                               
                        # {
                            # "name" : "temizle",
                            # "type" : "button",
                            # "x" : 5+310,
                            # "y" : 8,
                            # "default_image" : "d:/ymir work/ui/buton/1.tga",
                            # "over_image" : "d:/ymir work/ui/buton/2.tga",
                            # "down_image" : "d:/ymir work/ui/buton/3.tga",

                            # "text" : "Temizle",
                        # },
                    ),
                },
            ),
        },
    ),
}

Bunlara rağmen dogru fakat böyle bir hata alıyorum

DiceClass.LoadDialog.BindObject - <type 'exceptions.KeyError'>:'baslat'
Bu hata sistemle alakalı değil, sistemi değiştirmene gerek yok.

ui.py dosyana bak 'thinboard_circle' ekli değilse ekle, düzelir.
 
bunun sadece python ile olan aynı guiliden farkı nedir, serverside tarafında işleme gerek var mı? performans için
 
bunun sadece python ile olan aynı guiliden farkı nedir, serverside tarafında işleme gerek var mı? performans için
Elbette var olmaz olur mu. Sunucuya bir paket yolluyorsunuz bu paket içerisinde chate yazdırmak istediğiniz mesaj var. Sunucu bu veriyi alıp ilgili (globale yazıyorsanız, herkes) tüm clientlere paket yolluyor. Bu mesajı kendi sahnende göster diye. Attığınız paket sunucuda bir filtreden/onay işleminden geçmezse basit bir Python scripti sunucuyu bu yoğun istekler ile epey yorabilir. Kaldı ki sunucuyu işin içine sokmazsanız, zaten diğer clientler yazdığınız mesajı görmeyecektir.

edit: Oyunun kaynak kodunda p2p dosyaları var ama nasıl çalıştığını bilmiyorum. Yukarıda söylediklerim dedicated server için geçerli. Belki p2p'da farklı çalışıyordur, bilmiyorum. Biri p2p için de açıklarsa sevinirim :)
 
Son düzenleme:
Elbette var olmaz olur mu. Sunucuya bir paket yolluyorsunuz bu paket içerisinde chate yazdırmak istediğiniz mesaj var. Sunucu bu veriyi alıp ilgili (globale yazıyorsanız, herkes) tüm clientlere paket yolluyor. Bu mesajı kendi sahnende göster diye. Attığınız paket sunucuda bir filtreden/onay işleminden geçmezse basit bir Python scripti sunucuyu bu yoğun istekler ile epey yorabilir. Kaldı ki sunucuyu işin içine sokmazsanız, zaten diğer clientler yazdığınız mesajı görmeyecektir.

edit: Oyunun kaynak kodunda p2p dosyaları var ama nasıl çalıştığını bilmiyorum. Yukarıda söylediklerim dedicated server için geçerli. Belki p2p'da farklı çalışıyordur, bilmiyorum. Biri p2p için de açıklarsa sevinirim :)
ne alaka hocam.

zaten sendchatpacket var, python taraflı da 15 saniyede bir son yazılanı tekrar gönderiyor. bağırma sistemini bu arkadaş yazmadı ya, 2004de ymir yazdı heralde.
 
oyundan çıkış atıp başka hesaba girince girdiğiniz hesabın isminden bağırmaya devam ediyor ise bu yol ile çözdüm gerekli yeri düzeltin böyle sorun yaşarsanız

uisystem.py:
Genişlet Daralt Kopyala
BU 2 DEFİ ARAT:
   
    def __ClickLogOutButton(self):

    def __ClickExitButton(self):



ALTTAKİ İLE DEĞİŞTİR :

    def __ClickLogOutButton(self):
        if SYSTEM_MENU_FOR_PORTAL:
            if app.loggined:
                self.Close()
                self.Durdur()
                net.ExitApplication()
            else:
                self.Close()
                self.Durdur()
                net.LogOutGame()
        else:
            self.Close()
            self.Durdur()
            net.LogOutGame()


    def __ClickExitButton(self):
        self.Close()
        self.Durdur()
        net.ExitApplication()

    def Durdur(self):
        constInfo.auto_shout_text = ""
        constInfo.auto_shout_status = 0
 
Yazdığımı anlamadınız
anlamadınız değil hocam, zaten ben 15 saniyede bir bağırarak yazdığım mesajı herkese gönderiyorum shout ile. bunu python ile her 15 saniyede bir tekrarlayınca diğer oyuncular bunu niye görmesin? gayet de görüyor. siz olayı anlamamışsınız.

ben sadece bu tekrar işleminde serverside tarafının mantığını ve gerekliliğini sormuştum stabilite açısından sistem sahibine
 
anlamadınız değil hocam, zaten ben 15 saniyede bir bağırarak yazdığım mesajı herkese gönderiyorum shout ile. bunu python ile her 15 saniyede bir tekrarlayınca diğer oyuncular bunu niye görmesin? gayet de görüyor. siz olayı anlamamışsınız.

ben sadece bu tekrar işleminde serverside tarafının mantığını ve gerekliliğini sormuştum stabilite açısından sistem sahibine
server tarafında bir düzeltme yapmamış ki ekstra, sadece chatten pm desteği eklemiş
 
Geri
Üst