| 499 | } |
| 500 | |
| 501 | bool arcaneFX::freeTargetingRayCast(Point3F start, Point3F end, U32 mask) |
| 502 | { |
| 503 | sIsFreeTargeting = true; |
| 504 | |
| 505 | RayInfo hit_info; |
| 506 | if (!gClientContainer.castRay(start, end, mask, &hit_info)) |
| 507 | { |
| 508 | sFreeTargetPosValid = false; |
| 509 | return false; |
| 510 | } |
| 511 | |
| 512 | sFreeTargetPosValid = true; |
| 513 | sFreeTargetPos = hit_info.point; |
| 514 | |
| 515 | return true; |
| 516 | } |
| 517 | |
| 518 | StringTableEntry arcaneFX::convertLightingModelName(StringTableEntry lm_name) |
| 519 | { |