Aldeia RPG

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte ao desenvolvimento de jogos


+8
KingGray
AlexsandroChaos
Jonny157
Juton
Valentine
BrunoFox
Faabinhuu ;
thales12
12 participantes

    Sistema de Climas

    thales12
    thales12
    Membro de Honra
    Membro de Honra


    Mensagens : 322
    Créditos : 108

    Ficha do personagem
    Nível: 1
    Experiência:
    Sistema de Climas Left_bar_bleue0/0Sistema de Climas Empty_bar_bleue  (0/0)
    Vida:
    Sistema de Climas Left_bar_bleue30/30Sistema de Climas Empty_bar_bleue  (30/30)

    Sistema de Climas Empty Sistema de Climas

    Mensagem por thales12 Qui Out 27, 2011 7:29 pm

    Abra o Client~Side va na frmEditor_MapProperties e crie 1 ComboBox com:

    Name:cmbWeather

    e na list dela ponha:

    None
    Rain
    Snow
    Bird
    Sand

    ao lado da combobox crie 1 label chamada:

    Caption: Temperatura

    dps procure por:

    Código:
    .BootY = Val(txtBootY.text)

    em baixo adicione:

    Código:
    .Weather = cmbWeather.ListIndex

    dps procure no savemap por:

    Código:
    Put #f, , MAP.Music

    e em baixo adicione:

    Código:
    Put #f, , MAP.Weather

    dps procure no loadmap por:

    Código:
    Get #f, , MAP.Music

    em baixo adicione:

    Código:
    Get #f, , MAP.Weather

    dps na modConstants no final dela adicione:

    Código:
    ' weather
    Public Const WEATHER_RAINING As Long = 1
    Public Const WEATHER_SNOWING As Long = 2
    Public Const WEATHER_BIRD As Long = 3
    Public Const WEATHER_SAND As Long = 4
    Public Const MAX_RAINDROPS As Long = 200
    Public Const MAX_SNOWDROPS As Long = 1000
    Public Const MAX_BIRDDROPS As Long = 3
    Public Const MAX_SANDDROPS As Long = 6

    dps procure por:

    Código:
    ' automation problems
    Public ReInitSurfaces As Boolean

    em baixo adicione:

    Código:
    ' weather
    Public DropSnow(1 To MAX_SNOWDROPS) As DropRec
    Public DropRain(1 To MAX_RAINDROPS) As DropRec
    Public DropBird(1 To MAX_BIRDDROPS) As DropRec
    Public DropSand(1 To MAX_SANDDROPS) As DropRec

    dps procure por:

    Código:
    Public DDS_Bars As DirectDrawSurface7

    em baixo adicione:

    Código:
    Public DDS_Snow As DirectDrawSurface7
    Public DDS_Bird As DirectDrawSurface7
    Public DDS_Sand As DirectDrawSurface7

    se ja tiver isso la ignore...

    dps procure por:

    Código:
    Public DDSD_Bars As DDSURFACEDESC2

    em baixo adicione:

    Código:
    Public DDSD_Snow As DDSURFACEDESC2
    Public DDSD_Bird As DDSURFACEDESC2
    Public DDSD_Sand As DDSURFACEDESC2

    dps procure por:

    Código:
    If FileExist(App.Path & "\data files\graphics\bars.bmp", True) Then Call InitDDSurf("bars", DDSD_Bars, DDS_Bars)

    em baixo adicione:

    Código:
        If FileExist(App.Path & "\data files\graphics\snow.bmp", True) Then Call InitDDSurf("snow", DDSD_Snow, DDS_Snow)
        If FileExist(App.Path & "\data files\graphics\bird.bmp", True) Then Call InitDDSurf("bird", DDSD_Bird, DDS_Bird)
        If FileExist(App.Path & "\data files\graphics\sand.bmp", True) Then Call InitDDSurf("sand", DDSD_Sand, DDS_Sand)

    dps procure por:

    Código:
     DDS_Target = Nothing
        ZeroMemory ByVal VarPtr(DDSD_Target), LenB(DDSD_Target)

    em baixo adicione:

    Código:
     Set DDS_Snow = Nothing 'neve
        ZeroMemory ByVal VarPtr(DDSD_Snow), LenB(DDSD_Snow)
       
        Set DDS_Bird = Nothing
        ZeroMemory ByVal VarPtr(DDSD_Bird), LenB(DDSD_Bird)
       
        Set DDS_Sand = Nothing
        ZeroMemory ByVal VarPtr(DDSD_Sand), LenB(DDSD_Sand)

    no final da modDirectDraw7 adicione:

    Código:
    Sub BltWeather()
        Dim i As Long, sRECT As RECT

        ' rain
        If Map.Weather = WEATHER_RAINING Then
            Call DDS_BackBuffer.SetForeColor(RGB(12, 40, 96))
            For i = 1 To MAX_RAINDROPS
                With DropRain(i)
                    If .Init = True Then
                        ' move o rain
                        .y = .y + .ySpeed
                        ' checar a screen
                        If .y > 480 + 64 Then
                            .y = Rand(0, 100)
                            .y = .y - 100
                            .x = Rand(0, 640 + 64)
                            .ySpeed = Rand(5, 10)
                            .Init = True
                        End If
                        ' draw rain
                        DDS_BackBuffer.DrawLine .x + Camera.Left, .y + Camera.top, .x + Camera.Left, .y + (.ySpeed * 2) + Camera.top
                    Else
                        .y = Rand(0, 100)
                        .y = .y - 100
                        .x = Rand(0, 640 + 64)
                        .ySpeed = Rand(5, 10)
                        .Init = True
                    End If
                End With
            Next
        End If
       
        ' snow
        If Map.Weather = WEATHER_SNOWING Then
            Call DDS_BackBuffer.SetForeColor(RGB(255, 255, 255))
            For i = 1 To MAX_SNOWDROPS
                With DropSnow(i)
                    If .Init = True Then
                        ' move o snow
                        .y = .y + .ySpeed
                        .x = .x + .xSpeed
                        ' checar screen
                        If .y > 480 + 64 Then
                            .y = Rand(0, 100) - 100
                            .x = Rand(0, 640 + 64)
                            .ySpeed = Rand(1, 4)
                            .xSpeed = Rand(0, 4) - 2
                        End If
                        ' draw rain
                        With sRECT
                            .top = 0
                            .Bottom = 32
                            .Left = 0
                            .Right = 32
                        End With
                        Engine_BltFast .x + Camera.Left, .y + Camera.top, DDS_Snow, sRECT, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY
                    Else
                        .y = Rand(0, 480)
                        .x = Rand(0, 640 + 64)
                        .ySpeed = Rand(1, 4)
                        .xSpeed = Rand(0, 4) - 2
                        .Init = True
                    End If
                End With
            Next
        End If
       
        If Map.Weather = WEATHER_BIRD Then
            'Call DDS_BackBuffer.SetForeColor(RGB(255, 255, 255))
            For i = 1 To MAX_BIRDDROPS
                With DropBird(i)
                    If .Init = True Then
                        ' move o snow
                        .y = .y + .ySpeed
                        .x = .x + .xSpeed
                        ' checar a screen
                        If .y > 480 + 64 Then
                            .y = Rand(0, 100) - 100
                            .x = Rand(0, 640 + 64)
                            .ySpeed = Rand(1, 4)
                            .xSpeed = Rand(0, 4) - 2
                        End If
                        ' draw rain
                        With sRECT
                            .top = 0
                            .Bottom = 32
                            .Left = 0
                            .Right = 32
                        End With
                        Engine_BltFast .x + Camera.Left, .y + Camera.top, DDS_Bird, sRECT, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY
                    Else
                        .y = Rand(0, 480)
                        .x = Rand(0, 640 + 64)
                        .ySpeed = Rand(1, 4)
                        .xSpeed = Rand(0, 4) - 2
                        .Init = True
                    End If
                End With
            Next
        End If
       
        If Map.Weather = WEATHER_SAND Then 'neve
            'Call DDS_BackBuffer.SetForeColor(RGB(255, 255, 255))
            For i = 1 To MAX_SANDDROPS
                With DropSand(i)
                    If .Init = True Then
                        ' move o snow
                        .y = .y + .ySpeed
                        .x = .x + .xSpeed
                        ' checkar a screen
                        If .y > 480 + 64 Then
                            .y = Rand(0, 100) - 100
                            .x = Rand(0, 640 + 64)
                            .ySpeed = Rand(1, 4)
                            .xSpeed = Rand(0, 4) - 2
                        End If
                        ' draw rain
                        With sRECT
                            .top = 0
                            .Bottom = 32
                            .Left = 0
                            .Right = 32
                        End With
                        Engine_BltFast .x + Camera.Left, .y + Camera.top, DDS_Sand, sRECT, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY
                    Else
                        .y = Rand(0, 480)
                        .x = Rand(0, 640 + 64)
                        .ySpeed = Rand(1, 4)
                        .xSpeed = Rand(0, 4) - 2
                        .Init = True
                    End If
                End With
            Next
        End If
    End Sub

    na modDirectDraw7 procure por:

    Código:
    ' animação
        If NumAnimations > 0 Then
            For i = 1 To MAX_BYTE
                If AnimInstance(i).Used(1) Then
                    BltAnimation i, 1
                End If
            Next
        End If

    em baixo adicione:

    Código:
    ' weather
        BltWeather

    dps procure por:

    Código:
    MAP.Music = Buffer.ReadString

    em baixo adicione:

    Código:
    MAP.Weather = Buffer.ReadLong

    dps procure por:

    Código:
    Music As String * NAME_LENGTH

    em baixo adicione:

    'Lembrese de dar 1 enter em baixo da music para ficar 1 espaço

    Código:
    Weather As Long

    dps procure por:

    Código:
    Public Type ButtonRec
        fileName As String
        state As Byte
    End Type

    em baixo adicione:

    Código:
    Type DropRec
        x As Long
        y As Long
        ySpeed As Long
        xSpeed As Long
        Init As Boolean
    End Type

    dps procure por:

    Código:
    Buffer.WriteString Trim$(.Music)

    em baixo adicione:

    Código:
    Buffer.WriteLong .Weather

    Client~Side terminado agora no Server~Side procure no savemap por:

    Código:
    Put #F, , MAP(MapNum).Music

    em baixo adicione:

    Código:
    Put #F, , MAP(MapNum).Weather

    dps procure no loadmaps por:

    Código:
    Get #F, , MAP(i).Music

    em baixo adicione:

    Código:
    Get #F, , MAP(i).Weather

    dps procure por:

    Código:
    MAP(MapNum).Music = Buffer.ReadString

    em baixo adicione:

    Código:
    MAP(MapNum).Weather = Buffer.ReadLong

    dps procure por:

    Código:
    Buffer.WriteString Trim$(MAP(MapNum).Music)

    em baixo adicione:

    Código:
    Buffer.WriteLong MAP(MapNum).Weather

    dps procure por :

    Código:
    Music As String * NAME_LENGTH

    em baixo adicione:
    De 2 enter e adicione:

    Código:
    Weather As Long


    Finalmente acabo e.e

    OBS:caso tenha algum mapa criado ele tem q ser deletado se não vai dar erro !
    OBS2: PRECISA BAIXAR ISSO ABAIXO E POR NA PASTA GRAPHICS DO TEU JOGO

    http://www.megaupload.com/?d=XBC3AA3G

    Créditos: a mim titio thales12


    _________________
    Meu fã ? Meu Amigo ? Entao Use !

    Sistema de Climas Thalesfan
    Sistema de Climas Mv0yg8

    Minha Sign:

    Sistema de Climas Zkqt5e

    Nando Moura gosta desta mensagem

    Faabinhuu ;
    Faabinhuu ;
    Experiente
    Experiente


    Medalhas : Sistema de Climas Trophy11
    Mensagens : 513
    Créditos : 166

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por Faabinhuu ; Qui Out 27, 2011 8:26 pm

    Nunca consigo faze esses baguiu sempre da 1 erro Successful + bom tutorial
    BrunoFox
    BrunoFox
    Aldeia Friend
    Aldeia Friend


    Mensagens : 1531
    Créditos : 32

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por BrunoFox Qui Out 27, 2011 8:34 pm

    Vou tentar depois, parece util +1


    _________________
    Sistema de Climas CHlkxwf
    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : Sistema de Climas ZgLkiRU
    Mensagens : 5343
    Créditos : 1164

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por Valentine Sex Out 28, 2011 1:10 am

    Muito bom, pena que é pra eo dx7 ;/ que eu n uso mais
    mais mesmo assim vai ajudar muita gente
    + 1 crédito
    Juton
    Juton
    Experiente
    Experiente


    Mensagens : 486
    Créditos : 129

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por Juton Sex Out 28, 2011 7:26 am

    Muito Legal vou testar aqui +1 Cred!
    BrunoFox
    BrunoFox
    Aldeia Friend
    Aldeia Friend


    Mensagens : 1531
    Créditos : 32

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por BrunoFox Ter Nov 01, 2011 10:24 am

    é pro eodx7 Marlos? '-'


    _________________
    Sistema de Climas CHlkxwf
    Jonny157
    Jonny157
    Ocasional
    Ocasional


    Mensagens : 245
    Créditos : 9

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por Jonny157 Qua Dez 07, 2011 10:27 pm

    O sistema é bom, porém o clima passa por trás dos tiles do tipo Fringe. Será que não teria como modificar para passar por cima dos tiles fringes tbm?
    AlexsandroChaos
    AlexsandroChaos
    Novato
    Novato


    Mensagens : 26
    Créditos : 5

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por AlexsandroChaos Ter Dez 11, 2012 12:01 pm

    Cara mt bom,mas tem um problema.Conserta o link do download do arquivo
    Kies
    Kies
    Diva
    Diva


    Mensagens : 1155
    Créditos : 124

    Ficha do personagem
    Nível: 1
    Experiência:
    Sistema de Climas Left_bar_bleue0/0Sistema de Climas Empty_bar_bleue  (0/0)
    Vida:
    Sistema de Climas Left_bar_bleue30/30Sistema de Climas Empty_bar_bleue  (30/30)

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por Kies Sex Out 07, 2016 9:57 pm

    URGENTEEEE


    segue a correção da chuva passar atras dos fringes:

    recorte o:

    Código:
    bltweather

    e cole antes do:

    Código:
    ' Lock the backbuffer so we can draw text and names
        TexthDC = DDS_BackBuffer.GetDC
    avatar
    KingGray
    Novato
    Novato


    Mensagens : 2
    Créditos : 0

    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por KingGray Ter Mar 14, 2017 10:43 pm

    Gostaria de ver imagens Sobre..

    Conteúdo patrocinado


    Sistema de Climas Empty Re: Sistema de Climas

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Sex Nov 15, 2024 9:57 am