-
Einmalposter
hier ist ein tastenscript von mir und Bananen-Joe
Hallo alle zusammen,
Hier habe ich und Bananen-Joe haben mal für euch nen Script über RGSS gemacht, mitdem man alle Tasten der Tastatur und die Maus belegen kann.
Ich hoffe es wird euch weiter helfen.
-------------------------------------------------------------------------
module Input
VK_A = 0x41
VK_B = 0x42
VK_C = 0x43
VK_D = 0x44
VK_E = 0x45
VK_F = 0x46
VK_G = 0x47
VK_H = 0x48
VK_I = 0x49
VK_J = 0x4A
VK_K = 0x4B
VK_L = 0x4C
VK_M = 0x4D
VK_N = 0x4E
VK_O = 0x4F
VK_P = 0x50
VK_Q = 0x51
VK_R = 0x52
VK_S = 0x53
VK_T = 0x54
VK_U = 0x55
VK_V = 0x56
VK_W = 0x57
VK_X = 0x58
VK_Y = 0x59
VK_Z = 0x5A
VK_ADD = 0x6B
VK_ATTN = 0xF6
VK_BACK = 0x8
VK_CANCEL = 0x3
VK_CAPITAL = 0x14
VK_CLEAR = 0xC
VK_CONTROL = 0x11
VK_CRSEL = 0xF7
VK_DECIMAL = 0x6E
VK_DELETE = 0x2E
VK_DIVIDE = 0x6F
VK_DOWN = 0x28
VK_END = 0x23
VK_EREOF = 0xF9
VK_ESCAPE = 0x1B
VK_EXECUTE = 0x2B
VK_EXSEL = 0xF8
VK_F1 = 0x70
VK_F10 = 0x79
VK_F11 = 0x7A
VK_F12 = 0x7B
VK_F13 = 0x7C
VK_F14 = 0x7D
VK_F15 = 0x7E
VK_F16 = 0x7F
VK_F17 = 0x80
VK_F18 = 0x81
VK_F19 = 0x82
VK_F2 = 0x71
VK_F20 = 0x83
VK_F21 = 0x84
VK_F22 = 0x85
VK_F23 = 0x86
VK_F24 = 0x87
VK_F3 = 0x72
VK_F4 = 0x73
VK_F5 = 0x74
VK_F6 = 0x75
VK_F7 = 0x76
VK_F8 = 0x77
VK_F9 = 0x78
VK_HELP = 0x2F
VK_HOME = 0x24
VK_INSERT = 0x2D
VK_LBUTTON = 0x1
VK_LCONTROL = 0xA2
VK_LEFT = 0x25
VK_LMENU = 0xA4
VK_LSHIFT = 0xA0
VK_MBUTTON = 0x4
VK_MENU = 0x12
VK_MULTIPLY = 0x6A
VK_NEXT = 0x22
VK_NONAME = 0xFC
VK_NUMLOCK = 0x90
VK_NUMPAD0 = 0x60
VK_NUMPAD1 = 0x61
VK_NUMPAD2 = 0x62
VK_NUMPAD3 = 0x63
VK_NUMPAD4 = 0x64
VK_NUMPAD5 = 0x65
VK_NUMPAD6 = 0x66
VK_NUMPAD7 = 0x67
VK_NUMPAD8 = 0x68
VK_NUMPAD9 = 0x69
VK_OEM_CLEAR = 0xFE
VK_PA1 = 0xFD
VK_PAUSE = 0x13
VK_PLAY = 0xFA
VK_PRINT = 0x2A
VK_PRIOR = 0x21
VK_PROCESSKEY = 0xE5
VK_RBUTTON = 0x2
VK_RCONTROL = 0xA3
VK_RETURN = 0xD
VK_RIGHT = 0x27
VK_RMENU = 0xA5
VK_RSHIFT = 0xA1
VK_SCROLL = 0x91
VK_SELECT = 0x29
VK_SEPARATOR = 0x6C
VK_SHIFT = 0x10
VK_SNAPSHOT = 0x2C
VK_SPACE = 0x20
VK_SUBTRACT = 0x6D
VK_TAB = 0x9
VK_UP = 0x26
VK_ZOOM = 0xFB
KEYEVENTF_KEYDOWN = 0x0
KEYEVENTF_EXTENDEDKEY = 0x1
KEYEVENTF_KEYUP = 0x2
class Keyboard
@keystate = Win32API.new("user32", "GetAsyncKeyState", "i", "s")
@keyevent = Win32API.new("user32", "keybd_event", "iiii", "")
def self.pressed?(key = 0)
return @keystate.call(key)
end
def self.event(vk, scan, flags, info)
@keyevent.call(vk, scan, flags, info)
end
def self.press(vk, presstype = -1)
if presstype < 0
@keyevent.call(vk, 0, Input::KEYEVENTF_KEYDOWN, 0)
@keyevent.call(vk, 0, Input::KEYEVENTF_KEYUP, 0)
else
@keyevent.call(vk, 0, presstype, 0)
end
end
end
class Mouse
@getcursorpos = Win32API.new("user32", "GetCursorPos", "p", "i")
@setcursorpos = Win32API.new("user32", "SetCursorPos", "ii", "i")
def self.getpos()
pos = " " * 8
@getcursorpos.call(pos)
return pos.unpack("ii")
end
def self.setpos(x, y)
return @setcursorpos.call(x, y)
end
end
end
Das kommt unter den neu-Angelegten RGSS Punkt Modul rein.
Die VK_????? sind die Tastenbezeichnungen mit den ihr die tasten aufrufen könnt. Wie z.b. "0x24" ist die Tasten Abfrage.
-------------------------------------------------------------------------
Hier noch die anderen sachen um die taste anzusprechen, Vollbild zu machen etc....:
Zitat:
====Cursorpos setzen====
Input::Mouse.setpos(30, 60)
=====Curspos holen=====
$game_variables[5],$game_variables[6] = Input::Mouse.getpos()
=====Tasten drücken=====
Input::Keyboard.press(Input::VK_MENU, 0)
====Vollbild machen====
Input::Keyboard.press(Input::VK_MENU, 0)
Input::Keyboard.press(Input::VK_RETURN, 0)
Input::Keyboard.press(Input::VK_MENU, 2)
Input::Keyboard.press(Input::VK_RETURN, 2)
====Taste gedrückt?====
if Input::Keyboard.pressed?(Input::VK_RIGHT) < 0
[...] //Taste ist gedrückt.
else
[...] //Taste ist nicht gedrückt.
end
-------------------------------------------------------------------------
Diese werden über Events gestartet über die Funktion"Script ausführen" im Normalen Event Editor.
Hoffe ich konnte euch ein bissl helfen.
Sorry das ich irgentwie die originale Formatierung nich hinbekommen habe.
MFG ZeroX
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln