Показать сообщение отдельно
Старый 15.10.2005, 14:55   #12
jimon
 
Сообщений: n/a
пишу опять прямо на форуме )



type weapon
...
end type

dim we(10)

for create=0 to 9
w.weapon=new weapon
we(create)=handle(w)
next

global current_weapon

function changeweapon(weapon)
 *current_weapon=we(weapon)
end function

function update_weapons()
w.weapon=object.weapon(current_weapon)
.....
работа с оружием здесь
.....
end function
вот так
идея такова чтобы получать в update_weapons прямо w а не перебирать все обекты

можно конешно и так :
type weapon
field id
...
end type

for cr=0 to 10
w.weapon=new weapon
w\id=cr
next

global current_weapon

function changeweapon(weapon)
 *current_weapon=we(weapon)
end function

function update_weapons()
for w.weapon=next weapon
if w\id=current_weapon then
.....
работа с оружием здесь
.....
return 0
end if
next
end function

второй метод будет занимать чучуть меньше места в памяти но будет НА МНОГО раз медленее первого

я первый метод использую всегда
хотя я раньше использовал чтото типа второго метода и метода что предложил PAX
 
Ответить с цитированием