rpg maker可以玩双人吗?就不能像弹珠馆一样玩吗?
首先,据我所知,RPG只支持结构相对简单的游戏,比如小游戏(单机游戏),但是两个人玩是完全可以的(这需要很高的编程技巧,新手最好放弃)。
(1)添加网格
很简单,如图所示:
(2)很麻烦:
①你需要一个全键脚本,把这个脚本插入脚本编辑器(按F11)(重点:在主脚本之前新建一个脚本项):
#==============================================================================
#这个剧本来自www.66RPG.com。使用和转载时请保留这些信息。
#==============================================================================?
#?
# ?整字键盘
# ★、Kboard.press?(关键位置)?返回是否按下该键。
#比如条件不同:Kboard.keyboard($R_Key_H)
# ?然后当按下键盘H键时,条件发散成立。
#
# ★、Kboard .重复?(键位)== 1当一个键被连续按下时,返回true,否则返回false。
#比如条件不同:Kboard.keyb($R_Key_U) == 1。
# ?然后连续按下键盘u,条件发散成立。
#
# ★、Kboard.trigger?(键位,1)好像是当开关用的。按一次更改为真,然后按更改为假。
# ?修订:夏娜
#
#============================================================================
模块电路板
#==========================================================================
#以下是所有键盘按键的列表。
# -
$Rmouse_BUTTON_L = 0x01 #鼠标左键
$Rmouse_BUTTON_R = 0x02 #鼠标右键
$Rmouse_BUTTON_M = 0x04 #鼠标中键
$Rmouse_BUTTON_4 = 0x05 #第四个鼠标按钮
$Rmouse_BUTTON_5 = 0x06 #第五个鼠标按钮
# -
$R_Key_BACK?= 0x08 #退格键
$R_Key_TAB?= 0x09 # TAB键
$R_Key_RETURN = 0x0D #回车键
$R_Key_SHIFT = 0x10 # SHIFT键
$R_Key_CTLR?= 0x11 # CTLR密钥
$R_Key_ALT?= 0x12 # ALT键
$R_Key_PAUSE = 0x13 #暂停键
$R_Key_CAPITAL?= 0x14 #大写锁定键
$R_Key_ESCAPE = 0x1B # ESC键
$R_Key_SPACE = 0x20 #空格键
$R_Key_PRIOR = 0x21 # PAGE UP键
$R_Key_NEXT?= 0x22 #向下翻页键
$R_Key_END?= 0x23 #结束键
$R_Key_HOME?= 0x24 # HOME键
$R_Key_LEFT?= 0x25 #左箭头键
$R_Key_UP = 0x26 #向上箭头键
$R_Key_RIGHT = 0x27 #右箭头键
$R_Key_DOWN?= 0x28 #向下箭头键
$R_Key_SELECT = 0x29 #选择键
$R_Key_PRINT = 0x2A #打印密钥
$R_Key_SNAPSHOT?= 0x2C #打印屏幕键
$R_Key_INSERT = 0x2D # INS键
$R_Key_DELETE = 0x2E # DEL key
# -
$R_Key_0 = 0x30 # 0密钥
$ R _ Key _ 1 = 0x 31 # 1 Key
$R_Key_2 = 0x32 # 2密钥
$R_Key_3 = 0x33 # 3密钥
$R_Key_4 = 0x34 # 4密钥
$R_Key_5 = 0x35 # 5密钥
$R_Key_6 = 0x36 # 6密钥
$R_Key_7 = 0x37 # 7密钥
$R_Key_8 = 0x38 # 8密钥
$R_Key_9 = 0x39 # 9密钥
# -
$R_Key_A = 0x41 # A密钥
$R_Key_B = 0x42 # B密钥
$R_Key_C = 0x43 # C密钥
$R_Key_D = 0x44 # D密钥
$R_Key_E = 0x45 # E key
$R_Key_F = 0x46 # F键
$R_Key_G = 0x47 # G密钥
$R_Key_H = 0x48 # H key
$R_Key_I = 0x49 # I密钥
$R_Key_J = 0x4A # J key
$R_Key_K = 0x4B # K密钥
$R_Key_L = 0x4C # L密钥
$R_Key_M = 0x4D # M key
$R_Key_N = 0x4E # N key
$R_Key_O = 0x4F # O key
$R_Key_P = 0x50 # P密钥
$R_Key_Q = 0x51 # Q key
$R_Key_R = 0x52 # R key
$R_Key_S = 0x53 # S密钥
$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键
$R_Key_Z = 0x5A # Z键
# -
$R_Key_LWIN?= 0x5B # Windows左键(Microsoft自然键盘)
$R_Key_RWIN?= 0x5C #右Windows键(自然键盘)
$R_Key_APPS?= 0x5D #应用程序键(自然键盘)
# -
$R_Key_NUMPAD0?= 0x60 #数字键盘0键
$ R _ Key _ numpa 1?= 0x61 #数字键盘1键
$R_Key_NUMPAD2?= 0x62 #数字键盘2键
$R_Key_NUMPAD3?= 0x63 #数字键盘3键
$R_Key_NUMPAD4?= 0x64 #数字键盘4键
$R_Key_NUMPAD5?= 0x65 #数字键盘5键
$R_Key_NUMPAD6?= 0x66 #数字键盘6键
$R_Key_NUMPAD7?= 0x67 #数字键盘7键
$R_Key_NUMPAD8?= 0x68 #数字键盘8键
$R_Key_NUMPAD9?= 0x69 #数字键盘9键
$R_Key_MULTIPLY?= 0x6A #乘法键(*)
$R_Key_ADD?= 0x6B #添加键(+)
$R_Key_SEPARATOR = 0x6C #分隔键
$R_Key_SUBTRACT?= 0x6D #减法键(-)
$R_Key_DECIMAL?= 0x6E #十进制密钥
$R_Key_DIVIDE = 0x6F #除键(/)
# -
$ R _ Key _ f 1 = 0x 70 # f 1 Key
$R_Key_F2 = 0x71 # F2键
$R_Key_F3 = 0x72 # F3键
$R_Key_F4 = 0x73 # F4密钥
$R_Key_F5 = 0x74 # F5键
$R_Key_F6 = 0x75 # F6密钥
$R_Key_F7 = 0x76 # F7密钥
$R_Key_F8 = 0x77 # F8密钥
$R_Key_F9 = 0x78 # F9键
$R_Key_F10?= 0x79 # F10密钥
$R_Key_F11?= 0x7A # F11密钥
$R_Key_F12?= 0x7B # F12密钥
# -
$R_Key_NUMLOCK?= 0x90 #数字锁定键
$ R _ Key _ SCROLL = 0x 91 # SCROLL LOCK键
# -
$R_Key_LSHIFT = 0xA0 #左移位键
$R_Key_RSHIFT = 0xA1 #右移键
$R_Key_LCONTROL?= 0xA2 #左控制键
$R_Key_RCONTROL?= 0xA3 #右控制键
$R_Key_L_ALT = 0xA4 #左ALT键
$R_Key_R_ALT = 0xA5 #右ALT键
# -
$R_Key_SEP?= 0xBC #,key
$R_Key_DASH?= 0xBD # -密钥
$R_Key_DOTT?= 0xBE #。钥匙
模块_功能
@R_Key_Hash = {}
@R_Key_Repeat = {}
getkey state = win 32 API . new(" user 32 "," GetAsyncKeyState ",['I'],' I ')
def press?(rkey)
返回GetKeyState.call(rkey)!= 0
结束
def重复?(rkey)
result = GetKeyState.call(rkey)
如果结果!= 0
?if @R_Key_Repeat[rkey]。零?
@R_Key_Repeat[rkey] = 0
返回true
?结束
?@R_Key_Repeat[rkey] += 1
其他
?@R_Key_Repeat[rkey] =空
?@R_Key_Hash[rkey] = 0
结束
如果!@R_Key_Repeat[rkey]。零?和@ R _ Key _ Repeat[rkey]& gt;4 # 4是一个准确的数字。
?@R_Key_Repeat[rkey] = 0
?返回true
其他
?返回false
结束
结束
def触发器?(rkey)
result = GetKeyState.call(rkey)
if @R_Key_Hash[rkey] == 1和结果!= 0
?返回false
结束
如果结果!= 0
?@R_Key_Hash[rkey] = 1
?返回true
其他
?@R_Key_Hash[rkey] = 0
?返回false
结束
结束
结束
②设置第二个字符的操作键(在当前地图的并行处理事件中):
将上图中的“上”改为“w”,“下”改为“s”,“左”改为“a”,“右”改为“d”。
(以上只是角色行走的脚本,角色接触事件的脚本很麻烦。)
另外还有坐标脚本等一系列问题,就不详细解释了。如果你是新手,先用熟悉的变量、开关等基本功能做一个单人游戏,然后再想如何做一个双人游戏!
c风格工作室为你解答。