• Anmelden

1

Sonntag, 18. August 2013, 22:07

Text-Input via Tastatur

hi Leute :hilfe:

ich suche einen skript mit dem man text mit der tastatur eingeben kann, so wie bei PokeMon essentials ! mit einem kleinen extra fenster :yahoo!:

vielen dank im vorrraus :WinkeWinke:
Bild

2

Sonntag, 18. August 2013, 22:15

Meinst du so etwas?

Inputfenster | RPG Studio

-Der Chesra
Alle Infos zu meinem aktuellen RPGMaker VX Ace-Projekt Jäger - Licht & Schatten gibt es auf meiner Homepage zu finden, sobald eine spielbare Demo released wird, wird es Projekt-Vorstellungen in allen gängigen Foren geben. Die Informationen auf der Homepage sind noch nicht final.

3

Sonntag, 18. August 2013, 22:17

Nunja, ja. Danke >_>
Wenn sonst noch jemand ein Script in die Richtung hat: immer her damit, von mir aus auch für den VX/Ace.
Bild

Kagu-chan

Alopex Lagopus

Motto: Ich Böse, Du Teufel

  • Nachricht senden

4

Sonntag, 18. August 2013, 22:59

Ich kann dir meines morgen wenn ich dran denke aus meinem derzeitigen Projekt raus extrahieren - muss nur diverse abhängigkeiten lösen, die mit der zeit entstanden sind (da eigentständige engine)
Bild

  • Hallo

    Tabs klicken unso, ne?
  • Lyric

    Meine schwarze Liste, beginnt mit einem Satz:
    "Wer zuletzt lacht, lacht am besten!", und am Ende ist noch Platz.
    Auf der Liste meiner Feinde, ist auch für euch noch Platz
    Wer zuletzt lacht, lacht am besten!
    Merkt euch diesen Satz!

    Ode an die Feindschaft von Saltatio Mortis

  • Outtakes

    • Nummer 3
      20.09.2012 - 19:46
      "Yah, ich bin ihre Motivazin." "Motivazin - gibts das jetzt in der Apotheke rezeptflichtig?"
    • Ich mag Kekse
    • Nummer 2
      08.09.2012 - 01:29 Uhr
      "Die Erlebnismacher zu Hannovre - Exlibre - ääääh... Excalibur"

      *Lachflash*
    • Nummer 1
      07.09.2012 - 22:58 Uhr
      *Bööarps* - Die Erlebnismacher zu Hannovre - Excalibur... "Mahlzeit... also... doch nicht Mahlzeit... war nur die Website"
      "Ich hab gerülpst -.-" "Du hast was?" *LACHFLASH*
      "Nicht dein Ernst, oder?" "DOCH!" *LACHFLASH second tour*
  • Profile

    Bild
  • Ich

    Dass bin ich:

    Maker: RPG-XP, RPG-VX
    Story:
    Für andere mehr als für mich: 60%

    Grafik:
    Ich werde besser: 35%

    Pixeln:
    Ich stehe an den Anfängen: 7%

    Mapping:
    Es fehlen nur noch (alle) Feinheiten: 67%

    Scripting:
    Informatiker, mittlerweile auch andere Sachen am skripten: 93%
  • Neues aus der SB

    Neues aus der SB:

    Spoiler: Die Camper
    (03:41:36) Kagurame: n8 du
    (03:41:37) Irrlicht: Nacht Mozilla
    (03:41:47) MozillaBabybird: Kagu: der witz war flach
    (03:42:01) Kagurame: welcher witz?
    (03:42:14) Heatra: geh nicht benji
    (03:42:21) Heatra: spiel lieber ats2 :D
    (03:42:25) MozillaBabybird: nacht leute ^^ ijemand sollte diesen verlauf im studio bash posten, damit die mal wissen wer die echten camper hier sind :D
    (03:42:35) Kagurame: ich bin scripten
    (03:42:38) MozillaBabybird: Heat: tut mir sorry xD
    (03:42:40) Kagurame: ich mach das...^^
    (03:42:48) MozillaBabybird: bis .... mittag ?
    (03:42:49) Heatra: ^^
    (03:42:55) MozillaBabybird: ja mittag dürfte passen
    (03:42:56) MozillaBabybird: :D
    (03:42:57) Kagurame: ^^
    (03:43:02) Heatra: ich steh morgen eh erst um 5 uhr mittags auf
    (03:43:07) Kagurame: bis heute
    (03:43:11) Steve: MozillaBabybird verlässt den Chat.
    (03:43:15) Kagurame: ich so um 3
    zum Lesen den Text mit der Maus markieren


    Spoiler: Die Informatiker vom Dienst
    (03:05:32) Ankou: bist du dir SICHER, dass es die Performance an der Stelle kritisch ist und c.a. 30% sind KEIN großer Unterschied?
    (03:05:41) Ankou: oh
    (03:05:45) Ankou: okay
    (03:06:21) Asandril: Oh Ha was habt Ihr gerade für ein Thema?
    (03:06:41) Ankou: das ist in der Tat eine performancekritische angelegenheit, aber ich denke dennoch nicht, dass das die Dinge sind auf die du dein Hauptaugenmerk richten solltest.
    (03:07:01) Heatra: maschine
    (03:07:01) Ankou: derartige Mikrooptimierungen werden Performanceprobleme sogut wie niemals beseitigen können
    (03:07:01) Irrlicht: anhand der Tatsache dass es 20 000 000 Durchläufe waren nicht wirklich :-/
    (03:07:08) Ankou: änder was konzeptionelles oder lass es bleiben.
    (03:07:31) Ankou: evtl. kannst du mehr der Interpretation nach vorne verlagern
    (03:08:06) Ankou: aber solche Dinge zu versuchen wie die case Abfragen durch send zu ersetzen in der Hoffnung ein paar Prozent einzusparen bringens dir nicht
    (03:08:26) Asandril: Bin ich gerade hier in einem Kurs gelandet ..
    (03:08:36) Irrlicht: hatte mal in Erwägung gezogen die Befehle evtl. schonmal etwas "vorzuinterpretieren", aber das dürfte dann mehr Speicher verbrauchen als es Geschwindigkeit bringt...
    (03:09:11) Ankou: Asandril: ja, erstaunlich, angetrunken an Silvester über so etwas zu reden
    (03:09:28) Heatra: -> lampenfieber
    (03:09:40) Asandril: Kann ich nur beipflichten.
    (03:09:46) Irrlicht: atm bin ich mir nicht sicher was genau den doch vergleichsweise erheblichen Lag von Parallel-Process-Events verursacht (oder ob es einfach an der gesammten Masse liegt) wenn ich bei 2 000 000 solcher Durchläufe unter einer Sek. bleibe...
    (03:09:57) Ankou: Irrlicht: das ist durchaus üblich. Speicher gegen Geschwindigkeit einzustauschen ist sehr populär und bringt oft viel
    (03:11:23) Irrlicht: mal schaun :)
    zum Lesen den Text mit der Maus markieren


    Spoiler: Auch noch später^^
    (03:32:35) (Kagurame_AnkündigungImForumMach): es da ne methode wie beim xp?
    (03:32:48) Irrlicht: Cache.system("Iconset")
    bekommst das Iconset
    (03:32:50) (Kagurame_AnkündigungImForumMach): brauche es dringend, aber nix gefunden bisher
    (03:33:01) (Kagurame_AnkündigungImForumMach): und dann per id?
    (03:33:06) (Kagurame_AnkündigungImForumMach): drauf zugreifen?
    (03:33:07) Irrlicht: Index berechnet sich einfach aus
    x = index % 16
    y = index / 16
    (03:33:17) Irrlicht: afaik warens 16 nebeneinander^^
    (03:33:28) (Kagurame_AnkündigungImForumMach): ok, danke.
    (03:33:51) (Kagurame_AnkündigungImForumMach): ich glaub ich scripte dann noch ein bissl
    (03:34:01) Steve: (Kagurame_AnkündigungImForumMach​) heißt jetzt Kagurame.
    (03:34:04) Irrlicht: im XP hast die einzelnen Icons anhand des Namens aus dem Icon-Ordner aufgerufen
    (03:34:09) Steve: Kagurame ist nun Scripten!
    (03:34:17) Irrlicht: (geht natürlich im VX auch, aber wozu gibts das Iconset)
    (03:34:23) Kagurame: ja ich weis, daher war ich heut mittag verwirrt
    zum Lesen den Text mit der Maus markieren

Warkurus

Ankömmling

Motto: Shit happens.

  • Nachricht senden

5

Montag, 19. August 2013, 00:01

Hier ist ein Skript, welches alle Tasten auf der Tastaur und ein paar Maustasten erkennt:
Spoiler

Quellcode

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
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
 #======================================
  # ■ Keyboard Script
  #---------------------------------------------------------------------------
  #  By: Cybersam
  #   Date: 25/05/05
  #   Version 4
  #======================================
 
  module Kboard
   #--------------------------------------------------------------------------
   $RMouse_BUTTON_L = 0x01        # left mouse button
   $RMouse_BUTTON_R = 0x02        # right mouse button
   $RMouse_BUTTON_M = 0x04        # middle mouse button
   $RMouse_BUTTON_4 = 0x05        # 4th mouse button
   $RMouse_BUTTON_5 = 0x06        # 5th mouse button
   #--------------------------------------------------------------------------
   $R_Key_BACK      = 0x08        # BACKSPACE key
   $R_Key_TAB       = 0x09        # TAB key
   $R_Key_RETURN    = 0x0D        # ENTER key
   $R_Key_SHIFT     = 0x10        # SHIFT key
   $R_Key_CTLR      = 0x11        # CTLR key
   $R_Key_ALT       = 0x12        # ALT key
   $R_Key_PAUSE     = 0x13        # PAUSE key
   $R_Key_CAPITAL   = 0x14        # CAPS LOCK key
   $R_Key_ESCAPE    = 0x1B        # ESC key
   $R_Key_SPACE     = 0x20        # SPACEBAR
   $R_Key_PRIOR     = 0x21        # PAGE UP key
   $R_Key_NEXT      = 0x22        # PAGE DOWN key
   $R_Key_END       = 0x23        # END key
   $R_Key_HOME      = 0x24        # HOME key
   $R_Key_LEFT      = 0x25        # LEFT ARROW key
   $R_Key_UP        = 0x26        # UP ARROW key
   $R_Key_RIGHT     = 0x27        # RIGHT ARROW key
   $R_Key_DOWN      = 0x28        # DOWN ARROW key
   $R_Key_SELECT    = 0x29        # SELECT key
   $R_Key_PRINT     = 0x2A        # PRINT key
   $R_Key_SNAPSHOT  = 0x2C        # PRINT SCREEN key
   $R_Key_INSERT    = 0x2D        # INS key
   $R_Key_DELETE    = 0x2E        # DEL key
   #--------------------------------------------------------------------------
   $R_Key_0         = 0x30        # 0 key
   $R_Key_1         = 0x31        # 1 key
   $R_Key_2         = 0x32        # 2 key
   $R_Key_3         = 0x33        # 3 key
   $R_Key_4         = 0x34        # 4 key
   $R_Key_5         = 0x35        # 5 key
   $R_Key_6         = 0x36        # 6 key
   $R_Key_7         = 0x37        # 7 key
   $R_Key_8         = 0x38        # 8 key
   $R_Key_9         = 0x39        # 9 key
   #--------------------------------------------------------------------------
   $R_Key_A         = 0x41        # A key
   $R_Key_B         = 0x42        # B key
   $R_Key_C         = 0x43        # C key
   $R_Key_D         = 0x44        # D key
   $R_Key_E         = 0x45        # E key
   $R_Key_F         = 0x46        # F key
   $R_Key_G         = 0x47        # G key
   $R_Key_H         = 0x48        # H key
   $R_Key_I         = 0x49        # I key
   $R_Key_J         = 0x4A        # J key
   $R_Key_K         = 0x4B        # K key
   $R_Key_L         = 0x4C        # L key
   $R_Key_M         = 0x4D        # M key
   $R_Key_N         = 0x4E        # N key
   $R_Key_O         = 0x4F        # O key
   $R_Key_P         = 0x50        # P key
   $R_Key_Q         = 0x51        # Q key
   $R_Key_R         = 0x52        # R key
   $R_Key_S         = 0x53        # S key
   $R_Key_T         = 0x54        # T key
   $R_Key_U         = 0x55        # U key
   $R_Key_V         = 0x56        # V key
   $R_Key_W         = 0x57        # W key
   $R_Key_X         = 0x58        # X key
   $R_Key_Y         = 0x59        # Y key
   $R_Key_Z         = 0x5A        # Z key
   #--------------------------------------------------------------------------
  $R_Key_LWIN      = 0x5B        # Left Windows key (Microsoft Natural keyboard)
  $R_Key_RWIN      = 0x5C        # Right Windows key (Natural keyboard)
  $R_Key_APPS      = 0x5D        # Applications key (Natural keyboard)
   #--------------------------------------------------------------------------
   $R_Key_NUMPAD0   = 0x60        # Numeric keypad 0 key
   $R_Key_NUMPAD1   = 0x61        # Numeric keypad 1 key
   $R_Key_NUMPAD2   = 0x62        # Numeric keypad 2 key
   $R_Key_NUMPAD3   = 0x63        # Numeric keypad 3 key
   $R_Key_NUMPAD4   = 0x64        # Numeric keypad 4 key
   $R_Key_NUMPAD5   = 0x65        # Numeric keypad 5 key
   $R_Key_NUMPAD6   = 0x66        # Numeric keypad 6 key
   $R_Key_NUMPAD7   = 0x67        # Numeric keypad 7 key
   $R_Key_NUMPAD8   = 0x68        # Numeric keypad 8 key
   $R_Key_NUMPAD9  = 0x69        # Numeric keypad 9 key
   $R_Key_MULTIPLY  = 0x6A        # Multiply key (*)
   $R_Key_ADD       = 0x6B        # Add key (+)
   $R_Key_SEPARATOR = 0x6C        # Separator key
   $R_Key_SUBTRACT  = 0x6D        # Subtract key (-)
   $R_Key_DECIMAL   = 0x6E        # Decimal key
   $R_Key_DIVIDE    = 0x6F        # Divide key (/)
   #--------------------------------------------------------------------------
   $R_Key_F1        = 0x70        # F1 key
   $R_Key_F2        = 0x71        # F2 key
   $R_Key_F3        = 0x72        # F3 key
   $R_Key_F4        = 0x73        # F4 key
   $R_Key_F5        = 0x74        # F5 key
   $R_Key_F6        = 0x75        # F6 key
   $R_Key_F7        = 0x76        # F7 key
   $R_Key_F8        = 0x77        # F8 key
   $R_Key_F9        = 0x78        # F9 key
   $R_Key_F10       = 0x79        # F10 key
   $R_Key_F11       = 0x7A        # F11 key
   $R_Key_F12       = 0x7B        # F12 key
   #--------------------------------------------------------------------------
   $R_Key_NUMLOCK   = 0x90        # NUM LOCK key
   $R_Key_SCROLL    = 0x91        # SCROLL LOCK key
   #--------------------------------------------------------------------------
   $R_Key_LSHIFT    = 0xA0        # Left SHIFT key
   $R_Key_RSHIFT    = 0xA1        # Right SHIFT key
   $R_Key_LCONTROL  = 0xA2        # Left CONTROL key
   $R_Key_RCONTROL  = 0xA3        # Right CONTROL key
   $R_Key_L_ALT    = 0xA4        # Left ALT key
   $R_Key_R_ALT    = 0xA5        # Right ALT key
   #--------------------------------------------------------------------------
   $R_Key_SEP      = 0xBC        # , key
   $R_Key_DASH      = 0xBD        # - key
   $R_Key_DOTT      = 0xBE        # . key
   #--------------------------------------------------------------------------
   GetKeyState = Win32API.new("user32","GetAsyncKeyState",['i'],'i')
   GetKeyboardState = Win32API.new("user32","GetKeyState",['i'],'i')
   GetSetKeyState = Win32API.new("user32","SetKeyboardState",['i'],'i')
   #--------------------------------------------------------------------------
   module_function
   #--------------------------------------------------------------------------
   def keyb(rkey)
      if GetKeyState.call(rkey) != 0
        return 1
      end
      return 0
   end
    #--------------------------------------------------------------------------
   def keyboard(rkey)
     GetKeyState.call(rkey) & 0x01 == 1  #
   end
   #--------------------------------------------------------------------------
   def key(rkey, key = 0)
     GetKeyboardState.call(rkey) & 0x01 == key #
   end
 end
#------------------------------------------------------------------------------
 
module Keys
 
  NULL   = 0x00         # NULL Value
 
 
  MOUSE_LEFT   = 0x01           # left mouse button
  MOUSE_RIGHT  = 0x02           # right mouse button
  MOUSE_MIDDLE = 0x04           # middle mouse button
 
  BACK    = 0x08                # BACKSPACE key
  TAB      = 0x09               # TAB key
  RETURN        = 0x0D          # ENTER key
  SHIFT  = 0x10         # SHIFT key
  PAUSE  = 0x13         # PAUSE key
  ESCAPE        = 0x1B          # ESC key
  SPACE  = 0x20         # SPACEBAR
 
  PAGEUP        = 0x21          # PAGE UP key
  PAGEDOWN  = 0x22              # PAGE DOWN key
  END_    = 0x23                # END key
  HOME    = 0x24                # HOME key
 
  UP     = 0x26         # UP ARROW key
  DOWN   = 0x28         # DOWN ARROW key
  LEFT   = 0x25         # LEFT ARROW key
  RIGHT  = 0x27         # RIGHT ARROW key
 
  SELECT        = 0x29          # SELECT key
  PRINT  = 0x2A         # PRINT key
  SNAPSHOT  = 0x2C              # PRINT SCREEN key
  INSERT        = 0x2D          # INS key
  DELETE        = 0x2E          # DEL key
 
  N_0            = 0x30         # 0 key
  N_1            = 0x31         # 1 key
  N_2            = 0x32         # 2 key
  N_3            = 0x33         # 3 key
  N_4            = 0x34         # 4 key
  N_5            = 0x35         # 5 key
  N_6            = 0x36         # 6 key
  N_7            = 0x37         # 7 key
  N_8            = 0x38         # 8 key
  N_9            = 0x39         # 9 key
 
  A              = 0x41         # A key
  B              = 0x42         # B key
  C              = 0x43         # C key
  D              = 0x44         # D key
  E              = 0x45         # E key
  F              = 0x46         # F key
  G              = 0x47         # G key
  H              = 0x48         # H key
  I              = 0x49         # I key
  J              = 0x4A         # J key
  K              = 0x4B         # K key
  L              = 0x4C         # L key
  M              = 0x4D         # M key
  N              = 0x4E         # N key
  O              = 0x4F         # O key
  P              = 0x50         # P key
  Q              = 0x51         # Q key
  R              = 0x52         # R key
  S              = 0x53         # S key
  T              = 0x54         # T key
  U              = 0x55         # U key
  V              = 0x56         # V key
  W              = 0x57         # W key
  X              = 0x58         # X key
  Y              = 0x59         # Y key
  Z              = 0x5A         # Z key
 
  LWIN    = 0x5B                # Left Windows key (Microsoft Natural keyboard) 
  RWIN    = 0x5C                # Right Windows key (Natural keyboard)
  APPS    = 0x5D                # Applications key (Natural keyboard)
 
  NUM_0   = 0x60                # Numeric keypad 0 key
  NUM_1   = 0x61                # Numeric keypad 1 key
  NUM_2   = 0x62                # Numeric keypad 2 key
  NUM_3   = 0x63                # Numeric keypad 3 key
  NUM_4   = 0x64                # Numeric keypad 4 key
  NUM_5   = 0x65                # Numeric keypad 5 key
  NUM_6   = 0x66                # Numeric keypad 6 key
  NUM_7   = 0x67                # Numeric keypad 7 key
  NUM_8   = 0x68                # Numeric keypad 8 key
  NUM_9  = 0x69         # Numeric keypad 9 key
 
  NUM_MULTIPLY  = 0x6A          # Multiply key (*)
  NUM_ADD          = 0x6B               # Add key (+)
  NUM_SEPARATOR = 0x6C          # Separator key
  NUM_SUBTRACT  = 0x6D          # Subtract key (-)
  NUM_DECIMAL   = 0x6E          # Decimal key
  NUM_DIVIDE    = 0x6F          # Divide key (/)
 
  CAPSLOCK  = 0x14              # CAPS LOCK key
 
  SEMI_COLON = 0xBA             #Semi-colon Key (;)
  EQUAL = 0xBB                   #Equal Key (=)
  COMMA = 0xBC                   #Comma Key (,)
  DASH = 0xBD                     #Dash Key (-)
  PERIOD = 0xBE                 #Period Key (.)
  SLASH = 0xBF                   #Slash Key (/)
  ACCENT = 0xC0                 #Accent Key (`)
  OPEN_BRACKET = 0xDB     #Open Bracket ([)
  F_SLASH = 0xDC                   #Forward Slash (\)
  CLOSE_BRACKET = 0xDD   #Close Bracket (])
  QUOTE = 0xDE          #Open Quote (')
 
  F1            = 0x70          # F1 key
  F2            = 0x71          # F2 key
  F3            = 0x72          # F3 key
  F4            = 0x73          # F4 key
  F5            = 0x74          # F5 key
  F6            = 0x75          # F6 key
  F7            = 0x76          # F7 key
  F8            = 0x77          # F8 key
  F9            = 0x78          # F9 key
  F10      = 0x79               # F10 key
  F11      = 0x7A               # F11 key
  F12      = 0x7B               # F12 key
 
  NUMLOCK   = 0x90              # NUM LOCK key
  SCROLLOCK = 0x91              # SCROLL LOCK key
 
  L_SHIFT         = 0xA0                # Left SHIFT key
  R_SHIFT         = 0xA1                # Right SHIFT key
  L_CONTROL  = 0xA2             # Left CONTROL key
  R_CONTROL  = 0xA3             # Right CONTROL key
  L_ALT   = 0xA4                # Left ALT key
  R_ALT   = 0xA5                # Right ALT key
end
#--------------------------------------------------------------
#==============================================================================
#
# Keyboard Script v3                                                                      created by: cybersam
#
# its a small update...
# this have a script in it that allows you to insert a text with the keyboard
# inside the game... scroll down the script lit and you'll see it ^-^
# there is a new event on the map that shows you how it works...
# you can use the variables and command in the event in a script as well 
# since it works with "call script"
# now then... have fun with it ^-^
#
#==============================================================================
#
# hi guys.... it me again... ^-^
#
# now... this script is for more keys to press...
# anyone you like...
#
# mostly all keys are added...
#
# this version is now as module and easier to add to every script and 
# every event...
#
# here is nothing you need to change...
# only if you want to add more keys...
# add them in separate block below the last block 
# so you wont get confused... ^-^ 
# for the mouse is now only 5 buttons... 
# if you want more buttons couse your mouse have more...
# then you'll have to wait till microsoft update there stuff... ^-^
#
# i'll try to make the mouse-wheel work...
# i cant promess anything... ^-^
#
# till next update you cann add more stuff or just use it as it is atm...
#
# in the next release will be hopefully the mouse-wheel (not sure though)
# and the joy-stick/pad buttons... 
# but before that i'll have to reasearch a little about that... ^-^
#==============================================================================
module Keyboard
 
  GetKeyState = Win32API.new("user32","GetAsyncKeyState",['i'],'i')
  GetKeyboardState = Win32API.new("user32","GetKeyState",['i'],'i')
  GetSetKeyState = Win32API.new("user32","SetKeyboardState",['i'],'i')
 
  module_function
 
  def keyboard(rkey)
        GetKeyState.call(rkey) & 0x01 == 1  #
  end
 
  def key(rkey, key = 0)
        GetKeyboardState.call(rkey) & 0x01 == key #
  end
  USED_KEYS = [
  Keys::A,
  Keys::B,
  Keys::C,
  Keys::D,
  Keys::E,
  Keys::F,
  Keys::G,
  Keys::H,
  Keys::I,
  Keys::J,
  Keys::K,
  Keys::L,
  Keys::M,
  Keys::N,
  Keys::O,
  Keys::P,
  Keys::Q,
  Keys::R,
  Keys::S,
  Keys::T,
  Keys::U,
  Keys::V,
  Keys::W,
  Keys::X,
  Keys::Y,
  Keys::Z,
  Keys::SPACE,
  Keys::NUM_DIVIDE,
  Keys::SEMI_COLON,
  Keys::EQUAL,
  Keys::COMMA,
  Keys::DASH,
  Keys::SLASH,
  Keys::ACCENT,
  Keys::OPEN_BRACKET,
  Keys::F_SLASH,
  Keys::CLOSE_BRACKET,
  Keys::PERIOD,
  Keys::N_0,
  Keys::N_1,
  Keys::N_2,
  Keys::N_3,
  Keys::N_4,
  Keys::N_5,
  Keys::N_6,
  Keys::N_7,
  Keys::N_8,
  Keys::N_9,
  Keys::NUM_0,
  Keys::NUM_1,
  Keys::NUM_2,
  Keys::NUM_3,
  Keys::NUM_4,
  Keys::NUM_5,
  Keys::NUM_6,
  Keys::NUM_7,
  Keys::NUM_8,
  Keys::NUM_9,
  Keys::RETURN,
  Keys::SHIFT,
  Keys::ESCAPE,
  Keys::QUOTE
  ]
 
 
  module_function
 
  def check(key)
         Win32API.new("user32","GetAsyncKeyState",['i'],'i').call(key) & 0x01 == 1  # key 0
  end
 
  def trigger(key)
        return @used_i.include?(key)
  end
 
  def pressed(key)
        return true unless Win32API.new("user32","GetKeyState",['i'],'i').call(key).between?(0, 1)
        return false
  end
 
  def update
        @used_i = []
        for i in USED_KEYS
          x = check(i)
          if x == true
                @used_i.push(i)
          end
        end
  end
end

zum Lesen den Text mit der Maus markieren


Ein Fenster wie in Pokemon Essentials geht über:
Spoiler

Quellcode

1
2
3
4
5
6
def pbSetAuxiliaryWindow(loctext)
     @sprites["locwindow"].resizeToFit(loctext,Graphics.width)
     pbBottomRight(@sprites["locwindow"])
     @sprites["locwindow"].visible=true
     @sprites["locwindow"].text=loctext
  end

zum Lesen den Text mit der Maus markieren

mit
Spoiler

Quellcode

1
2
3
4
def pbBottomRight(window)
 window.x=Graphics.width-window.width
 window.y=Graphics.height-window.height
end

zum Lesen den Text mit der Maus markieren

Und hier ein Beispiel, wie ich es benutzt habe:
Spoiler

Quellcode

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
        @scene.pbSetMultiplayerInformation("Enter IP")
        Graphics.update
        target_ip=""
        ip_finished = false
        while ip_finished==false do
          Keyboard.update
          if Keyboard.trigger(Keys::N_0) or Keyboard.trigger(Keys::NUM_0)
            target_ip +="0"
          elsif Keyboard.trigger(Keys::N_1) or Keyboard.trigger(Keys::NUM_1)
            target_ip +="1"
          elsif Keyboard.trigger(Keys::N_2) or Keyboard.trigger(Keys::NUM_2)
            target_ip +="2"
          elsif Keyboard.trigger(Keys::N_3) or Keyboard.trigger(Keys::NUM_3)
            target_ip +="3"
          elsif Keyboard.trigger(Keys::N_4) or Keyboard.trigger(Keys::NUM_4)
            target_ip +="4"
          elsif Keyboard.trigger(Keys::N_5) or Keyboard.trigger(Keys::NUM_5)
            target_ip +="5"
          elsif Keyboard.trigger(Keys::N_6) or Keyboard.trigger(Keys::NUM_6)
            target_ip +="6"
          elsif Keyboard.trigger(Keys::N_7) or Keyboard.trigger(Keys::NUM_7)
            target_ip +="7"
          elsif Keyboard.trigger(Keys::N_8) or Keyboard.trigger(Keys::NUM_8)
            target_ip +="8"
          elsif Keyboard.trigger(Keys::N_9) or Keyboard.trigger(Keys::NUM_9)
            target_ip +="9"
          elsif Keyboard.trigger(Keys::PERIOD)
            target_ip +="."
          elsif Kboard.keyb($R_Key_DELETE)==1 or Kboard.keyb($R_Key_BACK)==1
            target_ip =""
          elsif Kboard.keyb($R_Key_RETURN)==1
            check=target_ip.split('.')
            k=0
            if check.length==4
              for i in 0..3
                check[i]=check[i].to_i
                k+=1 if check[i]>=0 && check[i]<=255
              end
            end
            if k != 4 and target_ip !=""
              Kernel.pbMessage(_INTL("IP address is incorrect."))
              target_ip=""
            end
          elsif Kboard.keyb($R_Key_Y)==1 && k==4
            ip_finished= true
            break
          elsif Kboard.keyb($R_Key_N)==1 && k==4
              target_ip =""
              k=0
          end
          if target_ip ==""
            @scene.pbSetMultiplayerInformation("Enter IP")
          else
            @scene.pbSetMultiplayerInformation(target_ip)
          end
          @scene.pbSetAuxiliaryWindow("Is "+target_ip+" correct? (Y/N)") if k==4
          Graphics.update
        end

zum Lesen den Text mit der Maus markieren


Ich hoffe, ich konnte helfen :)

Kagu-chan

Alopex Lagopus

Motto: Ich Böse, Du Teufel

  • Nachricht senden

6

Dienstag, 20. August 2013, 14:12

Habs gestern nicht geschafft - war nur zum schlafen daheim ^^
Hier mein genanntes Skript... (SB)

Habe jetzt nichts angepasst, nur nen kleinen Bug behoben.
Siehe Demo.

Aktivieren / Deaktivieren:
Defakto muss das Skript vor erster Verwendung einmal initialisiert werden, sowohl das Input als auch das Textinput.

Ruby Quellcode

1
2
Input._init
Input.text_init


Das Input-Skript ist solange aktiv, wie anstelle von Input.update Input._update gerufen wird, das normale Update wird dann automatisch mit ausgeführt.

Achtung: Eine Leertaste ist im normalen Maker ein Input::C (also wenn man es net verstellt hat), also muss man da je nach Kontext aufpassen das ein Leerzeichen auch ein Leerzeichen wird!

Der gelbe Hovereffekt wurde jetzt nicht ausgebaut - vielleicht magst umfärben? xD
Text Input Line 87f

Ruby Quellcode

1
2
yellow_pigment = @hover ? 0 : 255 # einfach 255 hinschreiben für immer weiß. Name falsch vergeben, aber k.b. das zu korrigieren.
borders.each { |border| border.fill_rect(border.rect, Color.new(255, 255, yellow_pigment)) } # Color.new bestimmt die Farbanteile, kannst rumexperimentieren, wie der Rahmen werden soll

Um den Rahmen zu entfernen, einfach im selben Skript entsprechend in der Refresh rumpfuschen, aber aufpassen, da dort der Text richtig zusammen gebaut wird.
Fehlerhafte Buchstaben bitte mitteilen - auch die wo den Text scheiße darstellen lassen.

Ansonsten wie erwähnt, es sollte alles, auch Sonderzeichen funktionieren... (@³²[}...), eben wie ein richtiger Texteditor. Btw hab ich grad gesehen das sogar CAPSLOCK FUNZT ;)
»Kagu-chan« hat folgende Datei angehängt:
  • Input-Test.exe (269,4 kB - 4 mal heruntergeladen - zuletzt: 20. August 2013, 19:34)
Bild

  • Hallo

    Tabs klicken unso, ne?
  • Lyric

    Meine schwarze Liste, beginnt mit einem Satz:
    "Wer zuletzt lacht, lacht am besten!", und am Ende ist noch Platz.
    Auf der Liste meiner Feinde, ist auch für euch noch Platz
    Wer zuletzt lacht, lacht am besten!
    Merkt euch diesen Satz!

    Ode an die Feindschaft von Saltatio Mortis

  • Outtakes

    • Nummer 3
      20.09.2012 - 19:46
      "Yah, ich bin ihre Motivazin." "Motivazin - gibts das jetzt in der Apotheke rezeptflichtig?"
    • Ich mag Kekse
    • Nummer 2
      08.09.2012 - 01:29 Uhr
      "Die Erlebnismacher zu Hannovre - Exlibre - ääääh... Excalibur"

      *Lachflash*
    • Nummer 1
      07.09.2012 - 22:58 Uhr
      *Bööarps* - Die Erlebnismacher zu Hannovre - Excalibur... "Mahlzeit... also... doch nicht Mahlzeit... war nur die Website"
      "Ich hab gerülpst -.-" "Du hast was?" *LACHFLASH*
      "Nicht dein Ernst, oder?" "DOCH!" *LACHFLASH second tour*
  • Profile

    Bild
  • Ich

    Dass bin ich:

    Maker: RPG-XP, RPG-VX
    Story:
    Für andere mehr als für mich: 60%

    Grafik:
    Ich werde besser: 35%

    Pixeln:
    Ich stehe an den Anfängen: 7%

    Mapping:
    Es fehlen nur noch (alle) Feinheiten: 67%

    Scripting:
    Informatiker, mittlerweile auch andere Sachen am skripten: 93%
  • Neues aus der SB

    Neues aus der SB:

    Spoiler: Die Camper
    (03:41:36) Kagurame: n8 du
    (03:41:37) Irrlicht: Nacht Mozilla
    (03:41:47) MozillaBabybird: Kagu: der witz war flach
    (03:42:01) Kagurame: welcher witz?
    (03:42:14) Heatra: geh nicht benji
    (03:42:21) Heatra: spiel lieber ats2 :D
    (03:42:25) MozillaBabybird: nacht leute ^^ ijemand sollte diesen verlauf im studio bash posten, damit die mal wissen wer die echten camper hier sind :D
    (03:42:35) Kagurame: ich bin scripten
    (03:42:38) MozillaBabybird: Heat: tut mir sorry xD
    (03:42:40) Kagurame: ich mach das...^^
    (03:42:48) MozillaBabybird: bis .... mittag ?
    (03:42:49) Heatra: ^^
    (03:42:55) MozillaBabybird: ja mittag dürfte passen
    (03:42:56) MozillaBabybird: :D
    (03:42:57) Kagurame: ^^
    (03:43:02) Heatra: ich steh morgen eh erst um 5 uhr mittags auf
    (03:43:07) Kagurame: bis heute
    (03:43:11) Steve: MozillaBabybird verlässt den Chat.
    (03:43:15) Kagurame: ich so um 3
    zum Lesen den Text mit der Maus markieren


    Spoiler: Die Informatiker vom Dienst
    (03:05:32) Ankou: bist du dir SICHER, dass es die Performance an der Stelle kritisch ist und c.a. 30% sind KEIN großer Unterschied?
    (03:05:41) Ankou: oh
    (03:05:45) Ankou: okay
    (03:06:21) Asandril: Oh Ha was habt Ihr gerade für ein Thema?
    (03:06:41) Ankou: das ist in der Tat eine performancekritische angelegenheit, aber ich denke dennoch nicht, dass das die Dinge sind auf die du dein Hauptaugenmerk richten solltest.
    (03:07:01) Heatra: maschine
    (03:07:01) Ankou: derartige Mikrooptimierungen werden Performanceprobleme sogut wie niemals beseitigen können
    (03:07:01) Irrlicht: anhand der Tatsache dass es 20 000 000 Durchläufe waren nicht wirklich :-/
    (03:07:08) Ankou: änder was konzeptionelles oder lass es bleiben.
    (03:07:31) Ankou: evtl. kannst du mehr der Interpretation nach vorne verlagern
    (03:08:06) Ankou: aber solche Dinge zu versuchen wie die case Abfragen durch send zu ersetzen in der Hoffnung ein paar Prozent einzusparen bringens dir nicht
    (03:08:26) Asandril: Bin ich gerade hier in einem Kurs gelandet ..
    (03:08:36) Irrlicht: hatte mal in Erwägung gezogen die Befehle evtl. schonmal etwas "vorzuinterpretieren", aber das dürfte dann mehr Speicher verbrauchen als es Geschwindigkeit bringt...
    (03:09:11) Ankou: Asandril: ja, erstaunlich, angetrunken an Silvester über so etwas zu reden
    (03:09:28) Heatra: -> lampenfieber
    (03:09:40) Asandril: Kann ich nur beipflichten.
    (03:09:46) Irrlicht: atm bin ich mir nicht sicher was genau den doch vergleichsweise erheblichen Lag von Parallel-Process-Events verursacht (oder ob es einfach an der gesammten Masse liegt) wenn ich bei 2 000 000 solcher Durchläufe unter einer Sek. bleibe...
    (03:09:57) Ankou: Irrlicht: das ist durchaus üblich. Speicher gegen Geschwindigkeit einzustauschen ist sehr populär und bringt oft viel
    (03:11:23) Irrlicht: mal schaun :)
    zum Lesen den Text mit der Maus markieren


    Spoiler: Auch noch später^^
    (03:32:35) (Kagurame_AnkündigungImForumMach): es da ne methode wie beim xp?
    (03:32:48) Irrlicht: Cache.system("Iconset")
    bekommst das Iconset
    (03:32:50) (Kagurame_AnkündigungImForumMach): brauche es dringend, aber nix gefunden bisher
    (03:33:01) (Kagurame_AnkündigungImForumMach): und dann per id?
    (03:33:06) (Kagurame_AnkündigungImForumMach): drauf zugreifen?
    (03:33:07) Irrlicht: Index berechnet sich einfach aus
    x = index % 16
    y = index / 16
    (03:33:17) Irrlicht: afaik warens 16 nebeneinander^^
    (03:33:28) (Kagurame_AnkündigungImForumMach): ok, danke.
    (03:33:51) (Kagurame_AnkündigungImForumMach): ich glaub ich scripte dann noch ein bissl
    (03:34:01) Steve: (Kagurame_AnkündigungImForumMach​) heißt jetzt Kagurame.
    (03:34:04) Irrlicht: im XP hast die einzelnen Icons anhand des Namens aus dem Icon-Ordner aufgerufen
    (03:34:09) Steve: Kagurame ist nun Scripten!
    (03:34:17) Irrlicht: (geht natürlich im VX auch, aber wozu gibts das Iconset)
    (03:34:23) Kagurame: ja ich weis, daher war ich heut mittag verwirrt
    zum Lesen den Text mit der Maus markieren

Social Bookmarks