equal
deleted
inserted
replaced
69 |
69 |
70 function CheckGearsLineCollision(Gear: PGear; oX, oY, tX, tY: hwFloat): PGearArray; |
70 function CheckGearsLineCollision(Gear: PGear; oX, oY, tX, tY: hwFloat): PGearArray; |
71 function CheckAllGearsLineCollision(SourceGear: PGear; oX, oY, tX, tY: hwFloat): PGearArray; |
71 function CheckAllGearsLineCollision(SourceGear: PGear; oX, oY, tX, tY: hwFloat): PGearArray; |
72 |
72 |
73 function UpdateHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
73 function UpdateHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
|
74 function UpdateHitOrder(Gear: PGear; Order: LongInt; Global: boolean): boolean; inline; |
74 function UpdateGlobalHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
75 function UpdateGlobalHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
75 procedure ClearHitOrderLeq(MinOrder: LongInt); inline; |
76 procedure ClearHitOrderLeq(MinOrder: LongInt); inline; |
76 procedure ClearGlobalHitOrderLeq(MinOrder: LongInt); inline; |
77 procedure ClearGlobalHitOrderLeq(MinOrder: LongInt); inline; |
77 procedure ClearHitOrder(); |
78 procedure ClearHitOrder(); |
78 |
79 |
369 function UpdateHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
370 function UpdateHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
370 begin |
371 begin |
371 UpdateHitOrder := UpdateHitOrderImpl(@ordera, Gear, Order); |
372 UpdateHitOrder := UpdateHitOrderImpl(@ordera, Gear, Order); |
372 end; |
373 end; |
373 |
374 |
|
375 function UpdateHitOrder(Gear: PGear; Order: LongInt; Global: boolean): boolean; inline; |
|
376 begin |
|
377 if Global then |
|
378 UpdateHitOrder := UpdateHitOrderImpl(@ordera, Gear, Order) |
|
379 else |
|
380 UpdateHitOrder := UpdateHitOrderImpl(@globalordera, Gear, Order) |
|
381 end; |
|
382 |
374 function UpdateGlobalHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
383 function UpdateGlobalHitOrder(Gear: PGear; Order: LongInt): boolean; inline; |
375 begin |
384 begin |
376 UpdateGlobalHitOrder := UpdateHitOrderImpl(@globalordera, Gear, Order); |
385 UpdateGlobalHitOrder := UpdateHitOrderImpl(@globalordera, Gear, Order); |
377 end; |
386 end; |
378 |
387 |
380 var i, freeIndex: LongInt; |
389 var i, freeIndex: LongInt; |
381 begin; |
390 begin; |
382 freeIndex:= 0; |
391 freeIndex:= 0; |
383 i:= 0; |
392 i:= 0; |
384 |
393 |
385 while i < ordera.Count do |
394 while i < HitOrder^.Count do |
386 begin |
395 begin |
387 if HitOrder^.order[i] <= MinOrder then |
396 if HitOrder^.order[i] <= MinOrder then |
388 Dec(HitOrder^.Count) |
397 Dec(HitOrder^.Count) |
389 else |
398 else |
390 begin |
399 begin |