2014-02-12 3 views
2

Теперь я делаю бесконечный бегун, где объекты случайно появляются на мне.Ошибка кода Game Maker

Мне сказали сделать объект spawnController и globalController, поэтому я и сделал. Затем этот код должен быть помещен в контроллере при ступенчатых событиях

if(tick = 32) 
{ 
tick = 0; 
instance_create(room_width,room_height,random(spike,groundBlock)); 
instance_create(room_width,irandom_range(0,room_height-32)); 
} 
tick += 1; 

Существует ничего плохого с ним, потому что я получаю сообщение об ошибке, которое:

In object spawnController, event Step, action 1 at line 4: Wrong number of arguments to function or script. 

ответ

1

У вас есть синтаксические ошибки здесь:

instance_create(room_width,irandom_range(0,room_height-32); 

Нет закрывающих круглых скобок или третьего аргумента.

+0

Да, я знаю, что исправил это в коде, но забыл исправить его здесь. И это все еще дает мне ошибки. – user1947331

+0

Welp, исправьте это здесь, так что следующий ответ может быть более полезным. – DiegoSalazar

+0

Подождите, почему мне нужен третий аргумент? – user1947331

2
instance_create(room_width,irandom_range(0,room_height-32)); 

Сообщения об ошибках в GM иногда могут быть немного неясными. Но в этом случае это было довольно ясно. Это идет по этой линии. И один из сценариев имеет слишком мало аргументов. Или irandom_range или instance_create вы забыли аргумент.

irandom_range принимает два аргумента, чтобы сделать случайное число, так что это правильно.

instance_create однако принимает 3 аргумента: x, y position и объект, из которого вы хотите создать экземпляр. Вам просто не хватает этого аргумента (и об этом говорит об ошибке). Я думаю, что это опечатка, как вы делаете это правильно в создании выше.

Manual about instance_create

+0

Сначала вы говорите, что мне не хватает третьего аргумента, но потом вы говорите, что я думаю, что это опечатка, и я сделал это правильно. Итак, вы говорите, что код прав? – user1947331

+0

Ух, я сказал, что вы правильно использовали функцию instance_create в использовании выше строки 4 (в строке 3) ... Неужели вы случайно скопировали код? см. править для ссылки на руководство – paul23

+0

Да Я скопировал код, но изменил его, чтобы он использовал мои спрайты. – user1947331

0

Одна вещь, которая выделилась мне, что вы использовали случайным образом, а не выбирать. Я не уверен, что в этой ситуации есть разница, но выберите, чтобы вы могли перечислять столько аргументов, которые вы хотите. Но, как было указано, это было то, что ваш недостающий объект, который вы хотите создать 4-ю жизнь. Вам нужно указать, какой объект вы хотите сделать.

instance_create(room_width, irandom_range(0,room_height-32), OBJECT); 
Смежные вопросы