Ну конечно. Я думал ты догадаешься что вместо "изменение переменной игрока" нужно не просто изменять переменную, а предварительно проверить какой предмет в слоте. Проверку делай по индексу спрайта (он у тебя записан в slot[argument0,4]) или лучше по названию предмета (slot[argument0,4]). Проверку делай через switch. Пример:
Code
switch (slot[argument0,4]) { case 'Маленькое зелье hp': увеличение здоровья; break; case 'следующий предмет': увеличение следующего параметра; break; }
Добавлено (23.12.2010, 10:32) --------------------------------------------- 2. Ты прописал в Draw рисование текста и не прописал рисование самого спрайта объекта. Посмотри, я недавно где-то писал как это исправить.
zik13, тебе же я посоветую попытаться создать свой инвентарь, а не собирать игру по исходникам. Да, маленький, да, убогий, но свой. Ты же хочешь, чтобы игру написали за тебя, и ты потом сказал, что сделал ее сам. Это не дело. Посоветуйте, где скачать VB6 :C
zik13, ты думаешь что я тупой? Я вижу что это скрипт. Я имел ввиду что у тебя означает каждая строка. Просто ты не рационально код написал. А когда у тебя будет 50 предметов ты будешь 50 раз if писать? Это не есть хорошо. Тем более ты опять написал этот же скрпит. Я ведь тебе его подправил (на предидущей странице) - убрал лишнюю проверку. Вот такой шаблон второй части кода (начиная со строки if mouse_check_button_pressed(mb_right)):
Code
if mouse_check_button_pressed(mb_right) { if slot[argument0,1] = 1 {
slot[argument0,0] = 0 slot[argument0,1] = 0 slot[argument0,2] = 0 slot[argument0,3] = 0 slot[argument0,4] = 0 изменение переменноей игрока } else { slot[argument0,1] -= 1 изменение переменной игрока } }
а проверку делай, всетаки через switch
Вместо
Code
if slot[argument0,4] = s_heal_smoll { o_player.health+=15 o_player.hpdraw=15 instance_create(o_player.x,o_player.y-25,o_drawhp)} if slot[argument0,4] = s_heal_medyum { o_player.health+=30 o_player.hpdraw=30 instance_create(o_player.x,o_player.y-25,o_drawhp)}
Я там немного напутал: Изменение переменнной должно стоять перед обнулением слотов. А вообще твой способ более громоздкий и менее рациональный. Новый пример инвентаря! /20.06.2012/
Я и не говорю что не рабочий. Просто мой тебе совет: про оптимизацию лучше подумать заранее (тем более когда тебе готовый код дают), чем потом, когда игра почти готова, но очччень тормозит, переделывать все и думать где бы лишний код убрать.
Такие "мелочи" потом могут собраться в большие тормоза.