![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Инвентарь [Delphi, Windows, X-OS]
TButton © (2002-12-02 23:52:00)Уважаемые мастаки, доброго вам времени суток!
Инвентарь для своей РПГхи я сделал ввиде объекта, содержащего динамический массив самих шмоток и методы для управления им. Процедура Put для добавления шмотки в массив затруднений не вызвала, а вот над Get пришлось призадуматься. Дело в том что когда берешь шмотку она должна удаляться из инвентаря. Может кто из вас знает оптимальный алгоритм удаления элемента из динамического массива?
Ketmar (2002-12-09 10:55:00) [1]>TButton© (09.12.02 07:33)
ага. не все. разница в том, что я сначала учил, а потом делал. но ни в коем случае не ноборот.
Satanas Nobiscum! 09-Dec-XXXVII A.S.
TButton (2002-12-09 07:33:00) [2]> cyborg
спасибо
> Ketmar
харе наворачивать ты тоже когда-то не все zнал
Ketmar (2002-12-05 17:16:00) [3]2TButton:
срочно бросать игродельство и начинать учить Object Pascal. когда выучим - возвращаться к игродельству.
Satanas Nobiscum! 05-Dec-XXXVII A.S.
cyborg (2002-12-04 22:58:00) [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;
TButton (2002-12-04 19:52:00) [5]>использовать TList.
Лист содержит укаzатели а мне нужны объекты. У меня предмет инвентаря определен как универсальный объект, который содержит информацию о том кто он такой и что он может, но сделал я его не как class или object, а как record.
cyborg (2002-12-03 11:10:00) [6]Если интересно сделать при помощи работы с памятью, т.е. выделение и освобождение участков памяти обращайся.
Ketmar (2002-12-03 10:22:00) [7]использовать TList.
Satanas Nobiscum! 03-Dec-XXXVII A.S.