Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Jeux: puie z / Jeux: Citymaime - Chapitre 1 / Jeux: Mer, îles et fous / News: Du neuf dans le making / News: Muma|Rope est disponible en (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

847 connectés actuellement

30729629 visiteurs
depuis l'ouverture

3246 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Zarok

Le Comptoir Du clickeur

Offgame

ConsoleFun

Tous nos partenaires

Devenir
partenaire



Screenshot Taker

Prend une capture d'écran de votre jeu seulement avec la touche F5.

Script pour RPG Maker VX
Ecrit par Jet10985 (Jet) & Zeus81
Publié par cari974 (lui envoyer un message privé)
Signaler un script cassé

❤ 0

Auteur : Jet10985 (Jet) et Zeus81 (pour la méthode Bitmap export passée en version 3)
Logiciel : RPG Maker VX
Nombre de scripts : 1

Description
Ce script permet de faire un screen de votre map avec la touche F5 et de l'adapter directement (en gros c'est pareil qu'avec la touche Imp. écran sauf que vous prenez que ce qu'il y dans votre projet et non le reste comme votre bureau par exemple ^^).

Conditions d'utilisation
Ce script est sous licence [url=https://creativecommons.org/licenses/by-nc-sa/3.0/]Creative Commons 3.0 Unported BY-NC-SA :
- Vous devez créditer le/les contributeurs.
- Vous ne pouvez pas utiliser ce script dans vos projets commerciaux.
- Vous pouvez partager l'original ou une version modifiée sous les mêmes conditions.

Installation
A placer au-dessus de Main.

Utilisation
Vous pouvez configurer la partie module :
- SAVE_AS_PNG : Si true, sauvegarde en png, si false, sauvegarde en bmp. Le bmp est plus rapide à générer mais plus lourd.
- SCREENSHOT_BUTTON : La touche qui sert à prendre le screenshot (F5 par défaut). Attention aux scripts qui peuvent utiliser la même touche pour le même effet par défaut (comme Fullscreen++).
- POPUP_SCREENSHOT_WINDOW : Si true, affiche une fenêtre avec le temps qu'a mis l'image à être générée.
- SCREENSHOT_SE : Si true, un effet sonore est joué quand le screenshot est pris.
- SCREENSHOT_SE_FILE : Le nom du SE qui sera joué si le précédent est true. Nom de fichier à mettre entre guillemets.
- WATERMARK : Si true, affiche une image supplémentaire sur le screenshot.
- WATERMARK_IMAGE : Le nom de l'image qui sera superposée si le précédent est true. Nom de fichier à mettre entre guillemets.

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#===============================================================================
# Screenshot Taker
# By Jet10985 (Jet)
# PNG and BMP saving code by: Zeus81
#===============================================================================
# This script will allow you to take screenshots of the current gamescreen
# with the push of a button
# This script has: 7 customization options.
#===============================================================================
# Overwritten Methods:
# None
#-------------------------------------------------------------------------------
# Aliased methods:
# Graphics: update
#===============================================================================
=begin
Notes:
 
All screenshots are saved in a folder in the game directory called "Screenshots"
and they are named sequentially, depending on how many screenshots are in
the folder already.
=end
 
module JetScreenshotTaker
  
  # Do you want to save the screenshot as a .bmp, or a .png?
  # .bmp is basically instant, and is 32-bit but the alpha channel is not
  # compatible with every image editing program.
  # .png is slightly slower but it is usually smaller than the .bmp
  # true is for .png, false if for .bmp
  SAVE_AS_PNG = true
  
  # Which button do you have to press to take a screenshot?
  SCREENSHOT_BUTTON = Input::F5
  
  # Do you want a pop-up window to appear when a screenshot has been taken?
  # The popup window will display how many seconds it took for the screenshot
  POPUP_SCREENSHOT_WINDOW = true
  
  # Would you like a sound effect played when a screenshot is taken?
  SCREENSHOT_SE = true
  
  # What SE would you like played?
  SCREENSHOT_SE_FILE = ""
  
  # Do you want to add a "Watermark" or some other image ontop of screenshots?
  WATERMARK = false
  
  # What is the name of the watermark image name?
  # This should be in the Pictures folder
  # Watermark image starts at (0, 0) which is top left, so make the image
  # screen-sized and place the contents accordingly.
  WATERMARK_IMAGE = "Watermark"
  
end
 
#===============================================================================
# DON'T EDIT FURTHER UNLESS YOU KNOW WHAT TO DO.
#===============================================================================
 
# Bitmap export v 3.0 by Zeus81
class Bitmap
  
  RtlMoveMemory_pi = Win32API.new('kernel32', 'RtlMoveMemory', 'pii', 'i')
  RtlMoveMemory_ip = Win32API.new('kernel32', 'RtlMoveMemory', 'ipi', 'i')
  
  def address
    RtlMoveMemory_pi.call(a = "\0" * 4, __id__ * 2 + 16, 4)
    RtlMoveMemory_pi.call(a, a.unpack('L')[0] + 8, 4)
    RtlMoveMemory_pi.call(a, a.unpack('L')[0] + 16, 4)
    a.unpack('L')[0]
  end
  
  def export(filename)
    jet_file_type = JetScreenshotTaker::SAVE_AS_PNG ? ".png" : ".bmp"
    Dir.mkdir("Screenshots") unless File.directory?("Screenshots")
    filename = "Screenshots/Screenshot #{Dir.entries("Screenshots").size - 1}#{jet_file_type}"
    file = File.open(filename, 'wb')
    case format=File.extname(filename)
    when '.bmp'
      data, size = String.new, width*height*4
      RtlMoveMemory_ip.call(data.__id__*2+8, [size,address].pack('L2'), 8)
      file.write(['BM',size+54,0,54,40,width,height,1,32,0,size,0,0,0,0].pack('a2L6S2L6'))
      file.write(data)
      RtlMoveMemory_ip.call(data.__id__*2+8, "\0"*8, 8)
    when '.png'
      def file.write_chunk(chunk)
        write([chunk.size-4].pack('N'))
        write(chunk)
        write([Zlib.crc32(chunk)].pack('N'))
      end
      file.write("\211PNG\r\n\32\n")
      file.write_chunk("IHDR#{[width,height,8,6,0,0,0].pack('N2C5')}")
      RtlMoveMemory_pi.call(data="\0"*(width*height*4), address, data.size)
      (width*height).times {|i| data[i<<=2,3] = data[i,3].reverse!}
      deflate, null_char, w4 = Zlib::Deflate.new(9), "\0", width*4
      (height-1).downto(0) {|i| deflate << null_char << data[i*w4,w4]}
      file.write_chunk("IDAT#{deflate.finish}")
      deflate.close
      file.write_chunk('IEND')
    when ''; print("Export format missing for '#{filename}'.")
    else     print("Export format '#{format}' not supported.")
    end
    file.close
  end
end
 
class << Graphics
  
  alias jet9991_update update unless $@
  def update(*args)
    jet9991_update(*args)
    if Input.trigger?(JetScreenshotTaker::SCREENSHOT_BUTTON)
      old_time = Time.now
      f = Graphics.snap_to_bitmap
      if JetScreenshotTaker::WATERMARK
        a = Cache.picture(JetScreenshotTaker::WATERMARK_IMAGE)
        f.blt(0, 0, a, a.rect)
      end
      f.export("Image")
      if JetScreenshotTaker::SCREENSHOT_SE
        RPG::SE.new(JetScreenshotTaker::SCREENSHOT_SE_FILE, 100, 100).play
      end
      if JetScreenshotTaker::POPUP_SCREENSHOT_WINDOW
        time = Time.now
        real_time = (time - old_time)
        elapsed_time = (real_time * 1000.0).to_i / 1000.0
        p "Screenshot taken: #{elapsed_time} seconds"
      end
    end
  end
end


Pastebin : https://pastebin.com/raw/0fpPC0Xm


Mis à jour le 1er mars 2021.






Mouton frisée - posté le 07/06/2015 à 21:16:00 (16 messages postés)

❤ 0

Erre dans les prairies à la recherche d'autres moutons frisés...

Ca a l'air super sympa! :D Mais où est-ce que l'on doit placer ce script s'il-te-plaît?

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers