new events is now always valid to append to
also "vore" now resets the eaten list
This commit is contained in:
parent
2b02d2b94b
commit
e0b8386849
@ -66,12 +66,13 @@ end
|
|||||||
|
|
||||||
-- vore eats another linked list
|
-- vore eats another linked list
|
||||||
-- by appending its contents.
|
-- by appending its contents.
|
||||||
-- the ingested linked
|
-- the ingested linked is empty.
|
||||||
-- list is no longer valid.
|
|
||||||
function linked_list:vore(x)
|
function linked_list:vore(x)
|
||||||
if (not x.next) return
|
if (not x.next) return
|
||||||
self.tail.next = x.next
|
self.tail.next = x.next
|
||||||
self.tail = x.tail
|
self.tail = x.tail
|
||||||
|
x.next = nil
|
||||||
|
x.tail = x
|
||||||
end
|
end
|
||||||
|
|
||||||
-- strip calls f(x) for each
|
-- strip calls f(x) for each
|
||||||
@ -153,6 +154,7 @@ function wipe_level()
|
|||||||
intangibles_fg = linked_list.new()
|
intangibles_fg = linked_list.new()
|
||||||
intangibles_bg = linked_list.new()
|
intangibles_bg = linked_list.new()
|
||||||
events = linked_list.new()
|
events = linked_list.new()
|
||||||
|
new_events = linked_list.new()
|
||||||
end
|
end
|
||||||
|
|
||||||
function _update60()
|
function _update60()
|
||||||
@ -169,9 +171,8 @@ end
|
|||||||
|
|
||||||
function updategame()
|
function updategame()
|
||||||
leveldone = level_frame()
|
leveldone = level_frame()
|
||||||
new_events = linked_list.new()
|
|
||||||
events:strip(call_move)
|
|
||||||
events:vore(new_events)
|
events:vore(new_events)
|
||||||
|
events:strip(call_move)
|
||||||
for _, lst in ipairs{intangibles_bg, pships, eships, pbullets, ebullets} do
|
for _, lst in ipairs{intangibles_bg, pships, eships, pbullets, ebullets} do
|
||||||
lst:strip(call_move)
|
lst:strip(call_move)
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user