私のコードを動作させることができません。 私はチュートリアルに続き、私の仕事を証明しています。 それは先生のために働いたが、私はそれを試したときに私のプレイヤーがつまらない、 それはアニメートしたり動いたりしなかった。 チュートリアルにあったコードを別の部分に分割しています。ここゲームメーカーのスタジオ:私は自分のプレーヤーのコントロールを壊しました
メインビットは次のとおりです。
///script_get_input
right_key = keyboard_check(vk_right);
up_key = keyboard_check(vk_up);
left_key = keyboard_check(vk_left)
down_key = keyboard_check(vk_down)
dash_key = keyboard_check_pressed(ord('C'));
attack_key = keyboard_check(ord('X'));
///check for gamepad input
if (gamepad_is_connected(0)) {
right_key = (gamepad_axis_value(0, gp_axislh)>= .5);
left_key = (gamepad_axis_value(0, gp_axislh)>= -.5);
up_key = (gamepad_axis_value(0, gp_axislv)>= -.5);
down_key = (gamepad_axis_value(0, gp_axislv)>= .5)
}
と、これは彼らが何を設定している間、それはコントロールを設定します。
ああ、またプレイヤーは、コード///moves the player in the step event
scr_get_input();
script_execute(state);
とどのように相互作用するか
///scr_move_state
scr_get_input();
///get the axis
var xaxis = (right_key - left_key);
var yaxis = (down_key - up_key);
///get direction
dir = point_direction(0, 0, xaxis, yaxis);
///get length
if (xaxis == 0 and yaxis = 0) {
len = 0;
} else {
len = spd;
}
///get the hspd and vspd
hspd = lengthdir_x(len, dir);
vspd = lengthdir_y(len, dir);
///move
phy_position_x += hspd;
phy_position_y += vspd;
///control the sprite
image_speed = sign(len)*.2;
if (len == 0) image_index = 0;
///vertical sprites
if (vspd > 0) {
sprite_index = spr_player_down;
} else if (vspd < 0) {
sprite_index = spr_player_up;
}
///horizontal sprites
if (hspd > 0) {
spr_index = spr_player_right;
} else if (hspd < 0) {
sprite_index = spr_player_left;
}
本当に複雑に見えますが、私はコーディング言語の初心者です。 また、ゲームメーカーには独自の言語があり、難しくなっていると聞きました。 フィードバックをいただければ幸いです!