Suporte ao desenvolvimento de jogos!


    [Eclipse Origins ] FullScreen

    Compartilhe
    avatar
    Vlad HR
    Iniciante
    Iniciante

    Mensagens : 30
    Créditos : 42

    Ficha do personagem
    Nível: 1
    Vida:
    30/30  (30/30)
    Energia:
    0/0  (0/0)

    [Eclipse Origins ] FullScreen

    Mensagem por Vlad HR em Ter Dez 19, 2017 6:05 pm



    Tutorial de outro forum!
    Permite que o jogo fique em tela cheia ou fullscreen, dessa forma o jogo ficará mais interessante para o jogador..
    ~Requerimentos~
    •Nivel de Programação = 2/5
    •Eclipse Origins(Não sei se funfa em outras Engine)

    ~Descrição~
    •Trata-se do Sistema de FullScreen elaborado por "Mitus" do Forum Internacional para o Eclipse Origins,com as dimensões em 800x600


    ~Tutorial~

    \Server/

    No modConstant procure por:


    Código:
     Public Const MAX_MAPX As Byte = 14
     Public Const MAX_MAPY As Byte = 11 



    E mude para:

    Código:
     Public Const MAX_MAPX As Byte = (800 / 32 - 1)
     Public Const MAX_MAPY As Byte = (608 / 32 - 1) 



    \Server Finalized/
    /Client Side \

    No modConstants procure por:

     

    Código:
    Public Const MAX_MAPX As Byte = 14
     Public Const MAX_MAPY As Byte = 11 



    E mude para:

    Código:
     Public Const MAX_MAPX As Byte = (800 / 32 - 1)
     Public Const MAX_MAPY As Byte = (608 / 32 - 1) 



    Depois procure por:

    Código:
    ' running at the same time will be allowed to access the screen as well.
     Call DD.SetCooperativeLevel(frmMainGame.hWnd, DDSCL_NORMAL) 



    E mude para:

    Código:
    ' running at the same time will be allowed to access the screen as well.
     Call DD.SetCooperativeLevel(frmMainGame.hWnd, DDSCL_FULLSCREEN Or DDSCL_EXCLUSIVE)
     Call DD.SetDisplayMode(800, 600, 32, 0, DDSDM_DEFAULT) 


    Agora crie um novo modulo chamado "modResolution" e dentro dele adicione:


    Código:
     Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As   Long, ByVal iModeNum As Long, lptypDevMode As Any) As Boolean
     Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" (lptypDevMode As Any,   ByVal dwFlags As Long) As Long
     Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long

    'Declarations
     Public Const CCDEVICENAME = 32
     Public Const CCFORMNAME = 32
     Public Const DM_BITSPERPEL = &H40000
     Public Const DM_PELSWIDTH = &H80000
     Public Const DM_PELSHEIGHT = &H100000
     Public Const CDS_TEST = &H4


     Type typDevMODE
     dmDeviceName As String CCDEVICENAME
     dmSpecVersion As Integer
     dmDriverVersion As Integer
     dmSize As Integer
     dmDriverExtra As Integer
     dmFields As Long
     dmOrientation As Integer
     dmPaperSize As Integer
     dmPaperLength As Integer
     dmPaperWidth As Integer
     dmScale As Integer
     dmCopies As Integer
     dmDefaultSource As Integer
     dmPrintQuality As Integer
     dmColor As Integer
     dmDuplex As Integer
     dmYResolution As Integer
     dmTTOption As Integer
     dmCollate As Integer
     dmFormName As String CCFORMNAME
     dmUnusedPadding As Integer
     dmBitsPerPel As Integer
     dmPelsWidth As Long
     dmPelsHeight As Long
     dmDisplayFlags As Long
     dmDisplayFrequency As Long
     End Type 




    Depois vai para o "frmMainGame" no topo ira encontrar por "Option Explicit "

    Embaixo dele coloque:


    Código:
      Dim ScreenWidth As Integer
      Dim ScreenHeight As Integer 



    Depois procure por:

     

    Código:
    Private Sub Form_Load()
     picAdmin.Left = 10
     picCurrency.Left = txtMyChat.Left
     picCurrency.Top = txtMyChat.Top
     Me.width = 10545
     End Sub 


    E mude para:


    Código:
     Private Sub Form_Load()
     Dim typDevM As typDevMODE
     Dim lngResult As Long
     ScreenWidth = Me.ScaleWidth
     ScreenHeight = Me.ScaleHeight

    lngResult = EnumDisplaySettings(0, 0, typDevM)

     With typDevM
     .dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT
     .dmPelsWidth = ScreenWidth 'ScreenWidth (640,800,1024, etc)
     .dmPelsHeight = ScreenHeight 'ScreenHeight (480,600,768, etc)
     End With
     ' Change the display settings to the specified graphics mode.
     lngResult = ChangeDisplaySettings(typDevM, CDS_TEST)

     picScreen.width = ScreenWidth
     picScreen.height = ScreenHeight

     picAdmin.Left = 10
     picCurrency.Left = txtMyChat.Left
     picCurrency.Top = txtMyChat.Top
     End Sub 



     Depois encontre "Private Sub imgExit_Click ()" e logo em seguida por:

     

    Código:
    txtChat.text = vbNullString 

    E adicione embaixo:

     

    Código:
    Call DestroyGame 
    Vai em "frmMainGame" na ferramenta ao lado mude:

    Código:
     BorderStyle = 0-None
     StarUpPosition = 2-CenterScreen
     WindowState = 2-Maximized



    Opticional
     Em "frmMenu" nas ferramenta ao lado mude:

     

    Código:
    BorderStyle = 0-None BorderStyle = 0-None
     StarUpPosition = 2-CenterScreen 
     WindowState = 2-Maximized 

    ~Recomendações~
    •Antes de fazer esse tutorial faça uma backup, e ao usa-lo no game não vai ter opção de deixar em Modo de Janela,mas tem como colocar essa opção com alguns if e tal


    _________________
    Agah [Vlad Hr]  :=D: !!

      Data/hora atual: Seg Nov 12, 2018 4:48 pm