Но как только нажимаю на левую кнопку в игре выскакивает ошибка, мол, переменная weapons не обнаружено. И если напишу o_hero.weapons, то все работает нормально...
Код
FATAL ERROR in action number 1 of Mouse Event for Glob Left Pressed for object o_hero:
Push :: Execution Error - Variable Get -1.weapons(100001, -1) at gml_Object_o_hero_GlobalLeftButtonPressed_1 (line 1) - if(weapons == 'Пистолет'){
Добавлено (19.06.2014, 19:49) --------------------------------------------- 2. Проблема с инвентарем. В Create:
draw_set_font(c_white); for(i = 0; i < w; i += 1){ draw_sprite(sprite_index,image_index,x+i*slot_x,y); //Отрисовываем ячейки if(object[i] != 0){ //Если в инвентаре что-то есть draw_sprite(sprite[i],image_index,x+(i+0.3)*slot_x,y); //Отрисовываем предмет draw_text(x+i*slot_x,y,number[i]); //Отрисовываем количество } }
В объекте родители в столкновении с игроком (назначаю предметам для подбора)
Код
for(i = 0; i < o_inv.w; i++){ if(o_inv.number[i] == 0){ //Если предмета нет o_inv.sprite[i] = sprite_index; //Присваиваем спрайт o_inv.object[i] = object_index; //Присваиваем индекс объекта o_inv.name[i] = name; //Присваиваем имя o_inv.max_number[i] = maxnumber; //Присваиваем макс. кол-во o_inv.number[i]++; //Прибавляем предмет на единицу instance_destroy(); //Удаляем предмет exit; }
if(o_inv.object[i] == object_index){ //Если предмет есть if(o_inv.number[i] < maxnumber){ //Если стак не полный o_inv.sprite[i] = sprite_index; //Присваиваем спрайт o_inv.object[i] = object_index; //Присваиваем индекс объекта o_inv.name[i] = name; //Присваиваем имя o_inv.max_number[i] = maxnumber; //Присваиваем макс. кол-во o_inv.number[i]++; //Прибавляем предмет на единицу instance_destroy(); //Удаляем предмет exit; } } }
При подборе предмета пишет, что неизвестна переменная name, хотя в дочернем объекте она объявлена. Как исправить?
С оружием лишь одна версия - русские буквы не принимает. Я когда диалоги НПСам прописывал русскими буквами в переменную, у меня выводило только знаки препинания. Попробуй заменить "Пистолет" на "Pistol".
С инвентарем, похоже, тоже самое.
Задам знающим людям вопрос: как и вообще возможно ли вбивать русские буквы в переменные?
русские буквы в коде допустимы только в комментариях так что не вникая глубоко, как минимум их из кода нужно убрать полностью. Касательно вывода строк на русском - это возможно. нужно просто делать более глубокую настройку шрифтов. Если открыть любом созданный в 2 клика шрифт, можно увидеть, что там в списке символов только латиница и знаки препинания. Соответственно отображаются в тексте только те символы, которые учтены в выбранном шрифте. Ghaarp