Мой вопрос будет первым. В: Я делаю арканоид и у меня созрел вопрос: Как сделать так чтобы когда игрок уничтожает последний блок то он переходит на след. уровень? Заранее спасибо! О: В obj(блоке), в событии Destroy, добавляешь действие Execute code и пишешь:
Код
if (instance_number(obj)<=0) { room_goto_next(); }
В: А в GML "==" распознаётся как equal to? О:
Цитата (Справка)
<, <=, ==, !=, >, >=: сравнения, результат true (1) или false (0)
В: Короче, как можно сделать так, что бы поддерживался русский текст? Я пытался поставить шрифт к тексту где есть русские символы, но не помогло.
Код
draw_text(x, y, 'абв, , , абвабвабв')
Там показывает лишь знаки, а заместо русских букв - пробелы. Если ставить англ. символы, то все нормально. Есть ли возможность сделать так, что бы русский работал корректно? О: При создании шрифта нажми на кнопку all:
FATAL ERROR in action number 1 of Destroy Event for object o_block_1: COMPILATION ERROR in code action Error in code at line 1: if (instanсe_number(obj)<=0) ^ at position 11: Unexpected symbol.
Добавлено (22.02.2013, 14:13) --------------------------------------------- А всё поменя Все равно не робит При уничтожении последнего блока...нечего не происходит
]Потому что в коде который я тебе написал, я вместо английской С, написал русскую С, чтоб копипастить не привыкал, а чтоб сам писал, запоминая не только зрительно, но и механически.=)
Хитрый =)
Добавлено (07.05.2013, 19:10) --------------------------------------------- А в GML "==" распознаётся как equal to?
Сообщение отредактировал: [DB]frog - Вторник, 07.05.2013, 19:11
Короче, как можно сделать так, что бы поддерживался русский текст? Я пытался поставить шрифт к тексту где есть русские символы, но не помогло.
Код
draw_text(x, y, 'абв, , , абвабвабв')
Там показывает лишь знаки, а заместо русских букв - пробелы. Если ставить англ. символы, то все нормально. Есть ли возможность сделать так, что бы русский работал корректно?
Есть вопрос. Как присваивать определённое значение переменной объекту в зависимости от того, в коде какого объекта был прописан instance_create. К примеру, если в коде o_wall в Create прописано instance_create(0,0,o_bullet), то у o_bullet будет значение переменной damage = 20. А если прописано в коде o_player, то всего лишь 10. Если делать несколько объектов, то их будет слишком много. Хочется найти способ проще, чтоб у разных экземпляров одного и того же объекта были разные значения переменных. Надеюсь не слишком сложно...
Добавлено (15.06.2017, 22:56) --------------------------------------------- P.S. with(instance_create(0,0,o_bullet)) {damage="нужное значение"}. Таким образом не у всех объектов o_bullet будет одинаковое значение переменной. Подскажите, не допустил ли я ошибку в коде? Просто с with я ещё недостаточно знаком. И еще один вопрос: Как сделать так, чтобы при столкновении с объектом o_bullet у игрока отбавлялось количество здоровья равное переменной damage у o_bullet, с которым мы столкнулись. Примерно я понимаю, но не могу оформить. Простите, что много текста.
MrMavl, создай объект bullet и в событии создания пропиши нужные переменные, например:
Код
damage = 10; //Значение урона по умолчанию spd = 2; //Значение скорости по умолчанию life_time = 2; //Значение времени жизни по умолчанию sprite_ = mini_gun; //Значение спрайта по умолчанию ... //Любые переменные которые будут вызываться, меняться или передаваться другим объектам
В объекте который будет создавать пули, например Турель, пиши следующий код:
Код
bullet_c = instance_create(x,y, bullet); with bullet_c { damage = 50; //Урон spd = 4; //Скорость sprite_ = rev_bllt_spr; //Визуальный спрайт пули револьвера ... // Любые другие параметры которые задаются в объекте и используются в для изменения или передачи };
Для того, чтобы получить значение от объекта, то есть при попадании пули в стену или игрока, то создавай событие Collision с bullet в объекте игрока или стены, и пиши код:
Код
hp = hp - other { damage = damage; } //Переменная урона равна самой себе with other { instance_destroy(); }