Sistem Cadouri!

Totalitatea subiectelor care nu respectă regulamentul vor fi stocate aici.
Avatar utilizator
M.Seby
Utilizator interzis !

Utilizator interzis !
Mesaje: 2685
Membru din: 10 Sep 2013, 15:00
Server: Not Found
Regat: Jinno
Aprecieri: 0
Mulţumiri: 16  
 Contact:
Medalii

Salut!
Astazi va voi arata un nou sistem, acesta fiind cel care va da cate un cadoua odata la 12 ore!

Imagine:Imagine Prima data trebuie pus acest query:

Cod: Selectaţi tot

CREATE TABLE `surprisebox` (
`id`  int(5) NOT NULL AUTO_INCREMENT ,
`openorclose`  int(5) NOT NULL ,
`box1`  int(8) NULL DEFAULT NULL ,
`box2`  int(8) NULL DEFAULT NULL ,
`box3`  int(8) NULL DEFAULT NULL ,
`box4`  int(8) NULL DEFAULT NULL ,
`box5`  int(8) NULL DEFAULT NULL ,
`date`  varchar(20) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL ,
`hour`  varchar(20) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL ,
PRIMARY KEY (`id`)
)
ENGINE=MyISAM
DEFAULT CHARACTER SET=latin1 COLLATE=latin1_swedish_ci
AUTO_INCREMENT=47
CHECKSUM=0
ROW_FORMAT=DYNAMIC
DELAY_KEY_WRITE=0
;
Dupa ce am pus anteriorul il vom pune si pe asta:

Cod: Selectaţi tot

INSERT INTO `surprisebox` (`openorclose`,`box1`,`box2`,`box3`,`box4`,`box5`,`date`,`hour`) VALUES (1, ITEM_ID_1, ITEM_ID_2, ITEM_ID_3, ITEM_ID_4, ITEM_ID_5, '<date>', '<hour>');
Unde zice Item_ID_X aici punti id-ul itemului care vreti sa il dea!

Acum puneti acest quest:

Cod: Selectaţi tot

quest thsgiftdev begin
    state start begin
        when login begin
            cmdchat("zetsugfsys "..q.getcurrentquestindex())
        end
        
        function giverandomitem()
            local random_nr = number(1,5)
            chat("I: The box it's opening...") -- Opening 
            if random_nr==1 then
                pc.give_item2(tonumber(mysql_query('SELECT box1 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box1[1]))
            elseif random_nr==2 then
                pc.give_item2(tonumber(mysql_query('SELECT box2 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box2[1]))
            elseif random_nr==3 then
                pc.give_item2(tonumber(mysql_query('SELECT box3 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box3[1]))
            elseif random_nr==4 then
                pc.give_item2(tonumber(mysql_query('SELECT box4 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box4[1]))
            elseif random_nr==5 then
                pc.give_item2(tonumber(mysql_query('SELECT box5 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box5[1]))
            end
            pc.setqf("giftsystemuse", get_time()+60*60*12) -- 12 HRS  
            cmdchat("giftsyshide")
        end


        when button or info begin
            if pc.getqf("giftsystemuse") <= get_time() then
                thsgiftdev.giverandomitem() -- yeah..function -_- don't try to bind that condition with this..
            else
                chat("W: You have no gift. Try after 12 hours...") -- Played 
            end
        end
    end
end
Acum merge la instalarea in client

Deschidem game.py (root) si cautam:

Cod: Selectaţi tot

self.playerGauge = None
In continuare adugam:

Cod: Selectaţi tot

self.GiftBox = ui.Button()
self.GiftBox.SetUpVisual("d:/ymir work/ui/present.tga")
self.GiftBox.SetOverVisual("d:/ymir work/ui/present.tga")
self.GiftBox.SetDownVisual("d:/ymir work/ui/present.tga")
self.GiftBox.SetText(" ")
self.GiftBox.SetToolTipText("Open the box!")
self.GiftBox.SetPosition(10, int(wndMgr.GetScreenHeight())-126)
self.GiftBox.SetEvent(self.ZetsuGiftSystem__deff__)
self.GiftBox.Show()
Cautam:

Cod: Selectaţi tot

def OnUpdate(self):
In continuare adugam:

Cod: Selectaţi tot

 ## Z #############################################################################
        if app.IsPressed(app.DIK_P) and app.IsPressed(app.DIK_LSHIFT):
            if self.GiftBox.IsShow():
                self.GiftBox.Hide()
            else:
                self.GiftBox.Show()
        ## Z #############################################################################
Trebuie sa arate ceva de genu: Imagine Acum cautam:

Cod: Selectaţi tot

def __ServerCommand_Build(self):
Si adugam:

Cod: Selectaţi tot

## Begin LuckyBoxes system
            "zetsugfsys"                            : self.ZetsuGiftSystem__init__,
            "giftsysshow" : self.ZetsuGiftSystem__show__,
            "giftsyshide" : self.ZetsuGiftSystem__hide__,
            ## End LuckyBoxes
La final adugam:

Cod: Selectaţi tot

## Begin LuckyBoxes system
    def ZetsuGiftSystem__init__(self, index):   
        constInfo.GIFTSYS = index # if doesn't work replace with:   constInfo.GIFTSYS = int(index) # But it's impossible...
    def ZetsuGiftSystem__deff__(self):
        import event
        event.QuestButtonClick(int(constInfo.GIFTSYS))
    ## End LuckyBoxes
    # Warning!! Let the last row empty!! ##
    def ZetsuGiftSystem__show__(self):
        self.GiftBox.Show()
    def ZetsuGiftSystem__hide__(self):
        self.GiftBox.Hide() 
Inchideti game.py salvati si dupa deschideti costinfo.py
Fix la inceputul documentului adugati asta:

Cod: Selectaţi tot

GIFTSYS = 1
Asta ar fi tot , mai trebuie adugat butonul

Download buton:

Il adugati in:

Cod: Selectaţi tot

(Etc.epk/eix)D:/ymir work/ui
Imagine
Afișează semnătura
Avatar utilizator
Ibrahimović
Nivel 6

Nivel 6
Mesaje: 1108
Membru din: 08 Sep 2014, 21:20
Aprecieri: 0
Mulţumiri: 48  
 Contact:
Medalii

Aşa tatii te pup pentru system . Acum lumea cauta la noi pe comunitate resurse şi o să găsească :X
Avatar utilizator
razvanronaldo99
Nou Venit

Nou Venit
Mesaje: 30
Membru din: 21 Dec 2013, 19:31
Regat: Jinno
Aprecieri: 0
Mulţumiri: 0
Medalii

Multumesc ca l-ai postat! :D
Avatar utilizator
TiTAN1080p
Nivel 4

Nivel 4
Mesaje: 576
Membru din: 22 Sep 2013, 19:36
Server: Colossus-MMO
Regat: Chunjo
Aprecieri: 17  
Mulţumiri: 15  
Discord: Copiază ID
 Contact:
Medalii

E fain, dar parerea mea e ca e inutil..
Mai bine faci diect un quest care sa iti dea un item daily si ala e.
Avatar utilizator
DowNNN
Nivel 1

Nivel 1
Mesaje: 125
Membru din: 04 Mai 2014, 19:02
Regat: Jinno
Aprecieri: 99  
Mulţumiri: 13  
Medalii

Unde in navicat?

[ Mesaj scris via Android ] Imagine
Avatar utilizator
K3nnTHD
Nivel 2

Nivel 2
Mesaje: 192
Membru din: 29 Noi 2013, 20:29
Aprecieri: 66  
Mulţumiri: 3  
 Contact:
Medalii

Cod: Selectaţi tot

Sa rezolvat mersi am gresit eu ceva la line 


MS e bun !...
Avatar utilizator
YzY
Nivel 1

Nivel 1
Mesaje: 54
Membru din: 03 Dec 2013, 12:27
Server: NU am
Regat: Chunjo
Aprecieri: 3  
Mulţumiri: 62  
Medalii

UPDATE QUEST.
Pentru cei care pun sa se deschida de la un anumit level si vor sa le apara jucatorile informatia "Nu aveti level X pentru a deschide aceste cadou" .

Cod: Selectaţi tot

quest thsgiftdev begin
    state start begin
        when login begin
            cmdchat("zetsugfsys "..q.getcurrentquestindex())
        end
        
        function giverandomitem()
            local random_nr = number(1,5)
            chat("Cutia se deschide...") -- Opening 
            if random_nr==1 then
                pc.give_item2(tonumber(mysql_query('SELECT box1 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box1[1]))
            elseif random_nr==2 then
                pc.give_item2(tonumber(mysql_query('SELECT box2 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box2[1]))
            elseif random_nr==3 then
                pc.give_item2(tonumber(mysql_query('SELECT box3 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box3[1]))
            elseif random_nr==4 then
                pc.give_item2(tonumber(mysql_query('SELECT box4 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box4[1]))
            elseif random_nr==5 then
                pc.give_item2(tonumber(mysql_query('SELECT box5 from player.surprisebox WHERE openorclose=1 LIMIT 1;').box5[1]))
            end
            pc.setqf("giftsystemuse", get_time()+60*60*12) -- 12 HRS  
            cmdchat("giftsyshide")
        end

		when button or info with pc.level <= 29 begin
			chat("Pentru a deschide aceasta cutie ai nevoie de level 30")
		end

        when button or info with pc.level >= 30 begin
			chat("Pentru a deschide aceasta cutie ai nevoie de level 30")
            if pc.getqf("giftsystemuse") <= get_time() then
                thsgiftdev.giverandomitem() -- yeah..function -_- don't try to bind that condition with this..
            else
                chat("Nu poti deschide cutia . Incearca dupa 12 ore ...") -- Played 
            end
        end
    end
end
Nivelul la care poate fi deschis il modificati de la linia:

Cod: Selectaţi tot

        when button or info with pc.level >= 30 begin
Acel 30 reprezentand nivelul.

P.s daca modificati nivelul la care sa fie deschis cadoul modificati si linia de deasupra cu "29" si puneti cu un nivel mai mic decat nivelul la care se deschide cadoul.
Ultima oară modificat 20 Dec 2014, 17:11 de către YzY, modificat 1 dată în total.
Avatar utilizator
BadBoyBy
Nivel 1

Nivel 1
Mesaje: 147
Membru din: 05 Dec 2014, 21:12
Aprecieri: 0
Mulţumiri: 0
Medalii

Frumos
Avatar utilizator
darkallience
Utilizator interzis !

Utilizator interzis !
Mesaje: 195
Membru din: 29 Noi 2013, 12:46
Server: www.andromeda.mt2.ro
Regat: Jinno
Aprecieri: 0
Mulţumiri: 1  
Medalii

Poi si unde bag id la itemu care vreau eu sa il de-a ?
Joci metin de mod PVP
Te asteptam chiar aici : http://www.andromeda.mt2.ro
Afișează semnătura
Avatar utilizator
alex25cm
Utilizator interzis !

Utilizator interzis !
Mesaje: 50
Membru din: 27 Dec 2014, 17:21
Server: loading
Regat: Jinno
Aprecieri: 0
Mulţumiri: 0
Medalii

Functioneaza pe Game 2089m ?
Închis
Răspunsuri
1
Vizualizări
216
Răspunsuri
1
Vizualizări
286
Răspunsuri
1
Vizualizări
382
Răspunsuri
3
Vizualizări
335

Înapoi la “Arhivă”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 31 vizitatori