Форум: "Игры";
Текущий архив: 2003.05.15;
Скачать: [xml.tar.bz2];
ВнизИнвентарь Найти похожие ветки
← →
TButton (2002-12-02 23:52) [0]Уважаемые мастаки, доброго вам времени суток!
Инвентарь для своей РПГхи я сделал ввиде объекта, содержащего динамический массив самих шмоток и методы для управления им. Процедура Put для добавления шмотки в массив затруднений не вызвала, а вот над Get пришлось призадуматься. Дело в том что когда берешь шмотку она должна удаляться из инвентаря. Может кто из вас знает оптимальный алгоритм удаления элемента из динамического массива?
← →
Ketmar (2002-12-03 10:22) [1]использовать TList.
Satanas Nobiscum! 03-Dec-XXXVII A.S.
← →
cyborg (2002-12-03 11:10) [2]Если интересно сделать при помощи работы с памятью, т.е. выделение и освобождение участков памяти обращайся.
← →
TButton (2002-12-04 19:52) [3]>использовать TList.
Лист содержит укаzатели а мне нужны объекты. У меня предмет инвентаря определен как универсальный объект, который содержит информацию о том кто он такой и что он может, но сделал я его не как class или object, а как record.
← →
cyborg (2002-12-04 22:58) [4]TButton ©
Лист содержит укаzатели а мне нужны объекты
...
но сделал я его не как class или object, а как record.
Нет тут никакой проблемы:
Type
PMyRecord = TMyRecord;
TMyRecord = record;
a,b,c : Integer;
End;
Var
MyRecord : TMyRecord;
...
Pointer:=@MeRecord;
PMyRecord(Pointer)^.a:=10;
PMyRecord(Pointer)^.b:=100;
PMyRecord(Pointer)^.c:=1000;
← →
Ketmar (2002-12-05 17:16) [5]2TButton:
срочно бросать игродельство и начинать учить Object Pascal. когда выучим - возвращаться к игродельству.
Satanas Nobiscum! 05-Dec-XXXVII A.S.
← →
TButton (2002-12-09 07:33) [6]> cyborg
спасибо
> Ketmar
харе наворачивать ты тоже когда-то не все zнал
← →
Ketmar (2002-12-09 10:55) [7]>TButton© (09.12.02 07:33)
ага. не все. разница в том, что я сначала учил, а потом делал. но ни в коем случае не ноборот.
Satanas Nobiscum! 09-Dec-XXXVII A.S.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2003.05.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c