Le Deal du moment : -64%
CALOR Rasoir anti-peluches – Large tête ...
Voir le deal
4.99 €

Aller en bas
Berka
Berka
Staffeux retraité

Nombre de messages : 1832
Age : 34
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Navigateur web sous RM. Empty Navigateur web sous RM.

Mar 4 Aoû 2009 - 17:58
Après pas mal d'essais, voici un navigateur internet intégré à RM.
Tout a commencé par la découverte d'une dll. Après, il m'a fallu retrouver toutes les fonctions à l'aide d'un éditeur hexa.

A placer au dessus de main.
La dll cwebpage.dll est a télécharger et à coller dans le répertoire de votre projet:
téléchargement de la dll

Code:
#===============================================================================
#                              RM Web Browser                            4/8/09
#-------------------------------------------------------------------------------
#  par Berka                        v 1.1                                rgss 2       
#-------------------------------------------------------------------------------
# Permet d'ouvrir un navigateur embarqué dans la fenetre de jeu.
#  - Nécessite la dll cwebpage.dll à placer à la racine du projet.
#  - Esc pour quitter le navigateur, F5: refresh, Return : retour...
#  - La fenetre peut etre aggrandie par le bouton systeme
#  utilisation: Net.browser("http://rpgmakervx.1fr1.net")
#===============================================================================

wdll="cwebpage.dll"
GPPS = Win32API.new('kernel32', 'GetPrivateProfileString', 'pppplp', 'l')
FW  = Win32API.new('user32',  'FindWindow',              'pp',    'i')
SWL  = Win32API.new('user32',  'SetWindowLong',          'lll',    'l')
GCR  = Win32API.new('user32',  'GetClientRect',          'lp',    'i')
GAKS = Win32API.new('user32',  'GetAsyncKeyState',        'i',      'i')
EBO  = Win32API.new(wdll,      'EmbedBrowserObject',      'l',      'i')
DHP  = Win32API.new(wdll,      'DisplayHTMLPage',        'lp',    'i')
RB  = Win32API.new(wdll,      'ResizeBrowser',          'lll',    'i')
UEBO = Win32API.new(wdll,      'UnEmbedBrowserObject',    'l',      'l')
DPA  = Win32API.new(wdll,      'DoPageAction',            'll',    'l')
def handle
  GPPS.call("Game","Title","",title="\0"*256,256,".//Game.ini")
  FW.call("RGSS Player",title.delete!("\0"))
end

SWL.call(handle,-16,0x10C70000|0x00080000)

def dimensions
  GCR.call(handle,rect=[0,0,0,0].pack('l4'))
  rect.unpack('l4')[2..3]
end
module Net
  def self.browser(url)
    EBO.call(handle)
    DHP.call(handle,url)
    RB.call(handle,*dimensions)
    loop do
      break if GAKS.call(0x1b)&0x01==1
      DPA.call(handle,0)if GAKS.call(0x08)&0x01==1
      DPA.call(handle,4)if GAKS.call(0x74)&0x01==1
      RB.call(handle,*dimensions)
    end
    UEBO.call(handle)
  end
end
Net.browser("http://rpgmakervx.1fr1.net")

J'espère qu'il vous sera utile.
Lisez bien la documentation au début !

berka
Michaël
Michaël
Membre

Nombre de messages : 308
Age : 29
Date d'inscription : 25/12/2008

Navigateur web sous RM. Empty Re: Navigateur web sous RM.

Mar 4 Aoû 2009 - 20:19
C'est tout simplement génial (comme d'habitude ^^) mais n'y a-t-il pas une solution pour le lancer via un appel de script ? Parce que je vois pas vraiment l'intérêt de lancer le navigateur au Game.exe ...
Sinon y a rien à redire à part peut-être l'absence d'une barre d'outils mais bon c'est RPG Maker pas Windows^^ .
Berka
Berka
Staffeux retraité

Nombre de messages : 1832
Age : 34
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Navigateur web sous RM. Empty Re: Navigateur web sous RM.

Mar 4 Aoû 2009 - 21:32
Merci !
Tu enlèves la ligne d'exemple à la fin et tu la places dans un événement quand tu veux !
Pour la barre d'outils, j'y ai pensé, mais je n'arrive pas encore à relier le systeme graphique Rgss avec ce script
berka
Nekaru
Nekaru
Membre

Nombre de messages : 433
Age : 32
Localisation : 35 rue des orfèvres, Ankh-Morpork, Plaines de Sto, Disque-monde, Univers.
Distinction : Saucisson Sec ='3
Membre du club masochiste de la Commu'.

[Mist' Smile]
Date d'inscription : 24/03/2008

Navigateur web sous RM. Empty Re: Navigateur web sous RM.

Mer 5 Aoû 2009 - 0:01
Berka, tu es uyn dieu ! J'écris avec RM en ce moment. Le seul problemme c'est qu'on peut pas corriger ses ffautes de frappe...

Mauis faut avouer que c'est quand même genial.
Djidane
Djidane
Membre

Nombre de messages : 1444
Age : 31
Localisation : Paris
Distinction : Héritier d'Alexdream (mais on l'aime quand même).
Lèche cul professionnel
et il aime ça!!!
Date d'inscription : 30/12/2008

Navigateur web sous RM. Empty Re: Navigateur web sous RM.

Mer 5 Aoû 2009 - 0:53
Une fois de plus je suis impressionner par ton travail Berka
vraiment super comme script ! affraid
Contenu sponsorisé

Navigateur web sous RM. Empty Re: Navigateur web sous RM.

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum