mirror of
https://github.com/rwengine/openrw.git
synced 2024-11-25 20:02:40 +01:00
Implemented some locate opcodes
This commit is contained in:
parent
464a1e39b9
commit
263f861a7c
@ -2449,53 +2449,44 @@ void opcode_00e2(const ScriptArguments& args, const ScriptPad padID, const Scrip
|
|||||||
@brief player %1d% %6bin-sphere/%near_point %2d% %3d% radius %4d% %5d%
|
@brief player %1d% %6bin-sphere/%near_point %2d% %3d% radius %4d% %5d%
|
||||||
|
|
||||||
opcode 00e3
|
opcode 00e3
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg arg2
|
@arg center Center of object
|
||||||
@arg arg3
|
@arg radius Radius of object
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
@arg arg6
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00e3(const ScriptArguments& args, const ScriptPlayer player, const ScriptFloat arg2, const ScriptFloat arg3, const ScriptFloat arg4, const ScriptFloat arg5, const ScriptInt arg6) {
|
bool opcode_00e3(const ScriptArguments& args, const ScriptPlayer player, const ScriptVec2 center, const ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00e3);
|
auto plyChar = player->getCharacter();
|
||||||
RW_UNUSED(player);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker);
|
||||||
RW_UNUSED(arg2);
|
|
||||||
RW_UNUSED(arg3);
|
|
||||||
RW_UNUSED(arg4);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %6b:in-sphere/%near_point_on_foot %2d% %3d% radius %4d% %5d%
|
@brief player %1d% %6b:in-sphere/%near_point_on_foot %2d% %3d% radius %4d% %5d%
|
||||||
|
|
||||||
opcode 00e4
|
opcode 00e4
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg coord0
|
@arg center Center of object
|
||||||
@arg coord1
|
@arg radius Radius of object
|
||||||
@arg arg6
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00e4(const ScriptArguments& args, const ScriptPlayer player, const ScriptVec2 coord0, const ScriptVec2 coord1, const ScriptInt arg6) {
|
bool opcode_00e4(const ScriptArguments& args, const ScriptPlayer player, const ScriptVec2 center, const ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->getCurrentVehicle() == nullptr;
|
auto condition = plyChar->getCurrentVehicle() == nullptr;
|
||||||
return script::objectInRadius(args, plyChar, coord0, coord1, arg6, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %6bin-sphere/%near_point_in_car %2d% %3d% radius %4d% %5d%
|
@brief player %1d% %6bin-sphere/%near_point_in_car %2d% %3d% radius %4d% %5d%
|
||||||
|
|
||||||
opcode 00e5
|
opcode 00e5
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg center
|
@arg center Center of object
|
||||||
@arg radius
|
@arg radius Radius of object
|
||||||
@arg arg6
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00e5(const ScriptArguments& args, const ScriptPlayer player, ScriptVec2 center, ScriptVec2 radius, const ScriptInt arg6) {
|
bool opcode_00e5(const ScriptArguments& args, const ScriptPlayer player, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
||||||
return script::objectInRadius(args, plyChar, center, radius, arg6, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2503,102 +2494,91 @@ bool opcode_00e5(const ScriptArguments& args, const ScriptPlayer player, ScriptV
|
|||||||
|
|
||||||
opcode 00e6
|
opcode 00e6
|
||||||
@arg player Player
|
@arg player Player
|
||||||
@arg coord Coordinates
|
@arg center Center of object
|
||||||
@arg radius Radius
|
@arg radius Radius of object
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00e6(const ScriptArguments& args, const ScriptPlayer player, ScriptVec2 coord, ScriptVec2 radius, const ScriptBoolean arg6) {
|
bool opcode_00e6(const ScriptArguments& args, const ScriptPlayer player, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->isStopped();
|
auto condition = plyChar->isStopped();
|
||||||
return script::objectInRadius(args, plyChar, coord, radius, arg6, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% stopped %6b:in-sphere/%near_point_on_foot %2d% %3d% radius %4d% %5d%
|
@brief player %1d% stopped %6b:in-sphere/%near_point_on_foot %2d% %3d% radius %4d% %5d%
|
||||||
|
|
||||||
opcode 00e7
|
opcode 00e7
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg arg2
|
@arg center Center of object
|
||||||
@arg arg3
|
@arg radius Radius of object
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
@arg arg6
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00e7(const ScriptArguments& args, const ScriptPlayer player, const ScriptFloat arg2, const ScriptFloat arg3, const ScriptFloat arg4, const ScriptFloat arg5, const ScriptInt arg6) {
|
bool opcode_00e7(const ScriptArguments& args, const ScriptPlayer player, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00e7);
|
auto plyChar = player->getCharacter();
|
||||||
RW_UNUSED(player);
|
auto condition = plyChar->isStopped() && plyChar->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(arg2);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
RW_UNUSED(arg3);
|
|
||||||
RW_UNUSED(arg4);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% stopped %6b:in-sphere/%near_point_in_car %2d% %3d% radius %4d% %5d%
|
@brief player %1d% stopped %6b:in-sphere/%near_point_in_car %2d% %3d% radius %4d% %5d%
|
||||||
|
|
||||||
opcode 00e8
|
opcode 00e8
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg coord
|
@arg center Center of object
|
||||||
@arg radius
|
@arg radius Radius of object
|
||||||
@arg arg6
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00e8(const ScriptArguments& args, const ScriptPlayer player, ScriptVec2 coord, ScriptVec2 radius, const ScriptInt arg6) {
|
bool opcode_00e8(const ScriptArguments& args, const ScriptPlayer player, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->isStopped() && plyChar->getCurrentVehicle() != nullptr;
|
auto condition = plyChar->isStopped() && plyChar->getCurrentVehicle() != nullptr;
|
||||||
return script::objectInRadius(args, plyChar, coord, radius, arg6, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %5b:in-sphere/%near_actor %2d% radius %3d% %4d%
|
@brief player %1d% %5b:in-sphere/%near_actor %2d% radius %3d% %4d%
|
||||||
|
|
||||||
opcode 00e9
|
opcode 00e9
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg character
|
@arg character Character goal
|
||||||
@arg radius
|
@arg radius Radius of goal
|
||||||
@arg arg5
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00e9(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec2 radius, const ScriptInt arg5) {
|
bool opcode_00e9(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
return script::objectInRadiusNear(args, plyChar, character, radius, arg5);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
|
return script::objectInRadiusNear(args, plyChar, character, radius, showMarker);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %5b:in-sphere/%near_actor_on_foot %2d% radius %3d% %4d%
|
@brief player %1d% %5b:in-sphere/%near_actor_on_foot %2d% radius %3d% %4d%
|
||||||
|
|
||||||
opcode 00ea
|
opcode 00ea
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg character
|
@arg character Character goal
|
||||||
@arg arg3
|
@arg radius Radius of goal
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00ea(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, const ScriptFloat arg3, const ScriptFloat arg4, const ScriptInt arg5) {
|
bool opcode_00ea(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00ea);
|
auto plyChar = player->getCharacter();
|
||||||
RW_UNUSED(player);
|
auto condition = plyChar->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(character);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(arg3);
|
return script::objectInRadiusNear(args, plyChar, character, radius, showMarker, condition);
|
||||||
RW_UNUSED(arg4);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %5b:in-sphere/%near_actor_in_car %2d% radius %3d% %4d%
|
@brief player %1d% %5b:in-sphere/%near_actor_in_car %2d% radius %3d% %4d%
|
||||||
|
|
||||||
opcode 00eb
|
opcode 00eb
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg character
|
@arg character Character goal
|
||||||
@arg radius
|
@arg radius Radius of goal
|
||||||
@arg arg5
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00eb(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec2 radius, const ScriptInt arg5) {
|
bool opcode_00eb(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
||||||
return script::objectInRadiusNear(args, plyChar, character, radius, arg5, condition);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
|
return script::objectInRadiusNear(args, plyChar, character, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2606,18 +2586,12 @@ bool opcode_00eb(const ScriptArguments& args, const ScriptPlayer player, const S
|
|||||||
|
|
||||||
opcode 00ec
|
opcode 00ec
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of goal
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00ec(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 coord, ScriptVec2 radius, const ScriptBoolean arg6) {
|
bool opcode_00ec(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00ec);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker);
|
||||||
RW_UNUSED(character);
|
|
||||||
RW_UNUSED(coord);
|
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2625,13 +2599,13 @@ bool opcode_00ec(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 00ed
|
opcode 00ed
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of goal
|
||||||
@arg radius
|
@arg radius Radius of goal
|
||||||
@arg arg6
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00ed(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 coord, ScriptVec2 radius, const ScriptInt arg6) {
|
bool opcode_00ed(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
auto condition = character->getCurrentVehicle() == nullptr;
|
auto condition = character->getCurrentVehicle() == nullptr;
|
||||||
return script::objectInRadius(args, character.get(), coord, radius, arg6, condition);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2639,18 +2613,13 @@ bool opcode_00ed(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 00ee
|
opcode 00ee
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of goal
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00ee(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 coord, ScriptVec2 radius, const ScriptBoolean arg6) {
|
bool opcode_00ee(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00ee);
|
auto condition = character->getCurrentVehicle() != nullptr;
|
||||||
RW_UNUSED(character);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
RW_UNUSED(coord);
|
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2658,12 +2627,13 @@ bool opcode_00ee(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 00ef
|
opcode 00ef
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of goal
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00ef(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 coord, ScriptVec2 radius, const ScriptBoolean arg6) {
|
bool opcode_00ef(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
return script::objectInRadius(args, character.get(), coord, radius, arg6);
|
auto condition = character->isStopped();
|
||||||
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2671,18 +2641,13 @@ bool opcode_00ef(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 00f0
|
opcode 00f0
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of goal
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f0(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 coord, ScriptVec2 radius, const ScriptBoolean arg6) {
|
bool opcode_00f0(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00f0);
|
auto condition = character->isStopped() && character->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(character);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
RW_UNUSED(coord);
|
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2690,18 +2655,13 @@ bool opcode_00f0(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 00f1
|
opcode 00f1
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of goal
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f1(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 coord, ScriptVec2 radius, const ScriptBoolean arg6) {
|
bool opcode_00f1(const ScriptArguments& args, const ScriptCharacter character, ScriptVec2 center, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00f1);
|
auto condition = character->isStopped() && character->getCurrentVehicle() != nullptr;
|
||||||
RW_UNUSED(character);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
RW_UNUSED(coord);
|
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2710,17 +2670,12 @@ bool opcode_00f1(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
opcode 00f2
|
opcode 00f2
|
||||||
@arg character0 Character/ped
|
@arg character0 Character/ped
|
||||||
@arg character1 Character/ped
|
@arg character1 Character/ped
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg5 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f2(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec2 radius, const ScriptBoolean arg5) {
|
bool opcode_00f2(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00f2);
|
/// @todo if characters are in vehicles, game uses vehicle positions instead of character ones
|
||||||
RW_UNUSED(character0);
|
return script::objectInRadiusNear(args, character0, character1, radius, showMarker);
|
||||||
RW_UNUSED(character1);
|
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2729,17 +2684,13 @@ bool opcode_00f2(const ScriptArguments& args, const ScriptCharacter character0,
|
|||||||
opcode 00f3
|
opcode 00f3
|
||||||
@arg character0 Character/ped
|
@arg character0 Character/ped
|
||||||
@arg character1 Character/ped
|
@arg character1 Character/ped
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg5 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f3(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec2 radius, const ScriptBoolean arg5) {
|
bool opcode_00f3(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00f3);
|
auto condition = character0->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(character0);
|
/// @todo if characters are in vehicles, game uses vehicle positions instead of character ones
|
||||||
RW_UNUSED(character1);
|
return script::objectInRadiusNear(args, character0, character1, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2748,234 +2699,178 @@ bool opcode_00f3(const ScriptArguments& args, const ScriptCharacter character0,
|
|||||||
opcode 00f4
|
opcode 00f4
|
||||||
@arg character0 Character/ped
|
@arg character0 Character/ped
|
||||||
@arg character1 Character/ped
|
@arg character1 Character/ped
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg5 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f4(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec2 radius, const ScriptBoolean arg5) {
|
bool opcode_00f4(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec2 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00f4);
|
auto condition = character0->getCurrentVehicle() != nullptr;
|
||||||
RW_UNUSED(character0);
|
/// @todo if characters are in vehicles, game uses vehicle positions instead of character ones
|
||||||
RW_UNUSED(character1);
|
return script::objectInRadiusNear(args, character0, character1, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %8b:in-sphere/%near_point %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief player %1d% %8b:in-sphere/%near_point %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00f5
|
opcode 00f5
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg arg2
|
@arg center Center of object
|
||||||
@arg arg3
|
@arg radius Radius of object
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
@arg arg6
|
|
||||||
@arg arg7
|
|
||||||
@arg arg8
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00f5(const ScriptArguments& args, const ScriptPlayer player, const ScriptFloat arg2, const ScriptFloat arg3, const ScriptFloat arg4, const ScriptFloat arg5, const ScriptFloat arg6, const ScriptFloat arg7, const ScriptInt arg8) {
|
bool opcode_00f5(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00f5);
|
auto plyChar = player->getCharacter();
|
||||||
RW_UNUSED(player);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker);
|
||||||
RW_UNUSED(arg2);
|
|
||||||
RW_UNUSED(arg3);
|
|
||||||
RW_UNUSED(arg4);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(arg7);
|
|
||||||
RW_UNUSED(arg8);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %8b:in-sphere/%near_point_on_foot %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief player %1d% %8b:in-sphere/%near_point_on_foot %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00f6
|
opcode 00f6
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg coord
|
@arg center Center of object
|
||||||
@arg radius
|
@arg radius Radius of object
|
||||||
@arg arg8
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f6(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 coord, ScriptVec3 radius, const ScriptInt arg8) {
|
bool opcode_00f6(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->getCurrentVehicle() == nullptr;
|
auto condition = plyChar->getCurrentVehicle() == nullptr;
|
||||||
return script::objectInRadius(args, plyChar, coord, radius, arg8, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% sphere %8b% near_point_in_car %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief player %1d% sphere %8b% near_point_in_car %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00f7
|
opcode 00f7
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg coord
|
@arg center Center of object
|
||||||
@arg radius
|
@arg radius Radius of object
|
||||||
@arg arg8
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f7(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 coord, ScriptVec3 radius, const ScriptInt arg8) {
|
bool opcode_00f7(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
||||||
return script::objectInRadius(args, plyChar, coord, radius, arg8, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% stopped %8b:in-sphere/%near_point %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief player %1d% stopped %8b:in-sphere/%near_point %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00f8
|
opcode 00f8
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg coord
|
@arg center Center of object
|
||||||
@arg radius
|
@arg radius Radius of object
|
||||||
@arg arg8
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00f8(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 coord, ScriptVec3 radius, const ScriptInt arg8) {
|
bool opcode_00f8(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->isStopped();
|
auto condition = plyChar->isStopped();
|
||||||
return script::objectInRadius(args, plyChar, coord, radius, arg8, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% stopped %8b:in-sphere/%near_point_on_foot %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief player %1d% stopped %8b:in-sphere/%near_point_on_foot %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00f9
|
opcode 00f9
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg arg2
|
@arg center Center of object
|
||||||
@arg arg3
|
@arg radius Radius of object
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
@arg arg6
|
|
||||||
@arg arg7
|
|
||||||
@arg arg8
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00f9(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 coord, ScriptVec3 radius, const ScriptInt arg8) {
|
bool opcode_00f9(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->isStopped() && plyChar->getCurrentVehicle() == nullptr;
|
auto condition = plyChar->isStopped() && plyChar->getCurrentVehicle() == nullptr;
|
||||||
return script::objectInRadius(args, plyChar, coord, radius, arg8, condition);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% stopped %8b:in-sphere/%near_point_in_car %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief player %1d% stopped %8b:in-sphere/%near_point_in_car %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00fa
|
opcode 00fa
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg arg2
|
@arg center Center of object
|
||||||
@arg arg3
|
@arg radius Radius of object
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
@arg arg6
|
|
||||||
@arg arg7
|
|
||||||
@arg arg8
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00fa(const ScriptArguments& args, const ScriptPlayer player, const ScriptFloat arg2, const ScriptFloat arg3, const ScriptFloat arg4, const ScriptFloat arg5, const ScriptFloat arg6, const ScriptFloat arg7, const ScriptInt arg8) {
|
bool opcode_00fa(const ScriptArguments& args, const ScriptPlayer player, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00fa);
|
auto plyChar = player->getCharacter();
|
||||||
RW_UNUSED(player);
|
auto condition = plyChar->isStopped() && plyChar->getCurrentVehicle() != nullptr;
|
||||||
RW_UNUSED(arg2);
|
return script::objectInRadius(args, plyChar, center, radius, showMarker, condition);
|
||||||
RW_UNUSED(arg3);
|
|
||||||
RW_UNUSED(arg4);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(arg7);
|
|
||||||
RW_UNUSED(arg8);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %6b:in-sphere/%near_actor %2d% radius %3d% %4d% %5d%
|
@brief player %1d% %6b:in-sphere/%near_actor %2d% radius %3d% %4d% %5d%
|
||||||
|
|
||||||
opcode 00fb
|
opcode 00fb
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg character
|
@arg character Character goal
|
||||||
@arg arg3
|
@arg radius Radius of goal
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
@arg arg6
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00fb(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, const ScriptFloat arg3, const ScriptFloat arg4, const ScriptFloat arg5, const ScriptInt arg6) {
|
bool opcode_00fb(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00fb);
|
auto plyChar = player->getCharacter();
|
||||||
RW_UNUSED(player);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(character);
|
return script::objectInRadiusNear(args, plyChar, character, radius, showMarker);
|
||||||
RW_UNUSED(arg3);
|
|
||||||
RW_UNUSED(arg4);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %6b:in-sphere/%near_actor %2d% on_foot radius %3d% %4d% %5d%
|
@brief player %1d% %6b:in-sphere/%near_actor %2d% on_foot radius %3d% %4d% %5d%
|
||||||
|
|
||||||
opcode 00fc
|
opcode 00fc
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg character
|
@arg character Character goal
|
||||||
@arg arg3
|
@arg radius Radius of goal
|
||||||
@arg arg4
|
@arg showMarker Show marker (True/False)
|
||||||
@arg arg5
|
|
||||||
@arg arg6
|
|
||||||
*/
|
*/
|
||||||
bool opcode_00fc(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, const ScriptFloat arg3, const ScriptFloat arg4, const ScriptFloat arg5, const ScriptInt arg6) {
|
bool opcode_00fc(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00fc);
|
auto plyChar = player->getCharacter();
|
||||||
RW_UNUSED(player);
|
auto condition = plyChar->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(character);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(arg3);
|
return script::objectInRadiusNear(args, plyChar, character, radius, showMarker, condition);
|
||||||
RW_UNUSED(arg4);
|
|
||||||
RW_UNUSED(arg5);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief player %1d% %6b:in-sphere/%near_actor %2d% in_car radius %3d% %4d% %5d%
|
@brief player %1d% %6b:in-sphere/%near_actor %2d% in_car radius %3d% %4d% %5d%
|
||||||
|
|
||||||
opcode 00fd
|
opcode 00fd
|
||||||
@arg player
|
@arg player Player
|
||||||
@arg character
|
@arg character Character goal
|
||||||
@arg radius
|
@arg radius Radius of goal
|
||||||
@arg arg6
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00fd(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec3 radius, const ScriptInt arg6) {
|
bool opcode_00fd(const ScriptArguments& args, const ScriptPlayer player, const ScriptCharacter character, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
auto plyChar = player->getCharacter();
|
auto plyChar = player->getCharacter();
|
||||||
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
auto condition = plyChar->getCurrentVehicle() != nullptr;
|
||||||
return script::objectInRadiusNear(args, plyChar, character, radius, arg6, condition);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
|
return script::objectInRadiusNear(args, plyChar, character, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief actor %1d% %8bin-sphere/%near_point %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief actor %1d% %8bin-sphere/%near_point %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00fe
|
opcode 00fe
|
||||||
@arg character Character/ped
|
@arg player Player
|
||||||
@arg coord Coordinates
|
@arg center Center of object
|
||||||
@arg radius Radius
|
@arg radius Radius of object
|
||||||
@arg arg8 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00fe(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 coord, ScriptVec3 radius, const ScriptBoolean arg8) {
|
bool opcode_00fe(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00fe);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(character);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker);
|
||||||
RW_UNUSED(coord);
|
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg8);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@brief actor %1d% %8bin-sphere/%near_point_on_foot %2d% %3d% %4d% radius %5d% %6d% %7d%
|
@brief actor %1d% %8bin-sphere/%near_point_on_foot %2d% %3d% %4d% radius %5d% %6d% %7d%
|
||||||
|
|
||||||
opcode 00ff
|
opcode 00ff
|
||||||
@arg character Character/ped
|
@arg player Player
|
||||||
@arg coord Coordinates
|
@arg center Center of object
|
||||||
@arg radius Radius
|
@arg radius Radius of object
|
||||||
@arg arg8 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_00ff(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 coord, ScriptVec3 radius, const ScriptBoolean arg8) {
|
bool opcode_00ff(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x00ff);
|
auto condition = character->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(character);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(coord);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg8);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2983,13 +2878,14 @@ bool opcode_00ff(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 0100
|
opcode 0100
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of object
|
||||||
@arg radius Radius
|
@arg radius Radius of object
|
||||||
@arg arg8 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_0100(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 coord, ScriptVec3 radius, const ScriptBoolean arg8) {
|
bool opcode_0100(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
auto condition = character->getCurrentVehicle() != nullptr;
|
auto condition = character->getCurrentVehicle() != nullptr;
|
||||||
return script::objectInRadius(args, character.get(), coord, radius, arg8, condition);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2997,18 +2893,14 @@ bool opcode_0100(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 0101
|
opcode 0101
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of object
|
||||||
@arg radius Radius
|
@arg radius Radius of object
|
||||||
@arg arg8 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_0101(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 coord, ScriptVec3 radius, const ScriptBoolean arg8) {
|
bool opcode_0101(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x0101);
|
auto condition = character->isStopped();
|
||||||
RW_UNUSED(character);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(coord);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg8);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -3016,18 +2908,14 @@ bool opcode_0101(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 0102
|
opcode 0102
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of object
|
||||||
@arg radius Radius
|
@arg radius Radius of object
|
||||||
@arg arg8 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_0102(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 coord, ScriptVec3 radius, const ScriptBoolean arg8) {
|
bool opcode_0102(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x0102);
|
auto condition = character->isStopped() && character->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(character);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(coord);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg8);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -3035,18 +2923,14 @@ bool opcode_0102(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
|
|
||||||
opcode 0103
|
opcode 0103
|
||||||
@arg character Character/ped
|
@arg character Character/ped
|
||||||
@arg coord Coordinates
|
@arg center Center of object
|
||||||
@arg radius Radius
|
@arg radius Radius of object
|
||||||
@arg arg8 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_0103(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 coord, ScriptVec3 radius, const ScriptBoolean arg8) {
|
bool opcode_0103(const ScriptArguments& args, const ScriptCharacter character, ScriptVec3 center, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x0103);
|
auto condition = character->isStopped() && character->getCurrentVehicle() != nullptr;
|
||||||
RW_UNUSED(character);
|
/// @todo if character is in vehicle, game uses vehicle position instead of character one
|
||||||
RW_UNUSED(coord);
|
return script::objectInRadius(args, character.get(), center, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg8);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -3055,17 +2939,12 @@ bool opcode_0103(const ScriptArguments& args, const ScriptCharacter character, S
|
|||||||
opcode 0104
|
opcode 0104
|
||||||
@arg character0 Character/ped
|
@arg character0 Character/ped
|
||||||
@arg character1 Character/ped
|
@arg character1 Character/ped
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_0104(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec3 radius, const ScriptBoolean arg6) {
|
bool opcode_0104(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x0104);
|
/// @todo if characters are in vehicles, game uses vehicle positions instead of character ones
|
||||||
RW_UNUSED(character0);
|
return script::objectInRadiusNear(args, character0, character1, radius, showMarker);
|
||||||
RW_UNUSED(character1);
|
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -3074,17 +2953,13 @@ bool opcode_0104(const ScriptArguments& args, const ScriptCharacter character0,
|
|||||||
opcode 0105
|
opcode 0105
|
||||||
@arg character0 Character/ped
|
@arg character0 Character/ped
|
||||||
@arg character1 Character/ped
|
@arg character1 Character/ped
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_0105(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec3 radius, const ScriptBoolean arg6) {
|
bool opcode_0105(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x0105);
|
auto condition = character0->getCurrentVehicle() == nullptr;
|
||||||
RW_UNUSED(character0);
|
/// @todo if characters are in vehicles, game uses vehicle positions instead of character ones
|
||||||
RW_UNUSED(character1);
|
return script::objectInRadiusNear(args, character0, character1, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -3093,17 +2968,13 @@ bool opcode_0105(const ScriptArguments& args, const ScriptCharacter character0,
|
|||||||
opcode 0106
|
opcode 0106
|
||||||
@arg character0 Character/ped
|
@arg character0 Character/ped
|
||||||
@arg character1 Character/ped
|
@arg character1 Character/ped
|
||||||
@arg radius Radius
|
@arg radius Radius of goal
|
||||||
@arg arg6 Boolean true/false
|
@arg showMarker Show marker (True/False)
|
||||||
*/
|
*/
|
||||||
bool opcode_0106(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec3 radius, const ScriptBoolean arg6) {
|
bool opcode_0106(const ScriptArguments& args, const ScriptCharacter character0, const ScriptCharacter character1, ScriptVec3 radius, const ScriptBoolean showMarker) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x0106);
|
auto condition = character0->getCurrentVehicle() != nullptr;
|
||||||
RW_UNUSED(character0);
|
/// @todo if characters are in vehicles, game uses vehicle positions instead of character ones
|
||||||
RW_UNUSED(character1);
|
return script::objectInRadiusNear(args, character0, character1, radius, showMarker, condition);
|
||||||
RW_UNUSED(radius);
|
|
||||||
RW_UNUSED(arg6);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -3679,11 +3550,7 @@ void opcode_0152(const ScriptArguments& args, const ScriptString arg1, const Scr
|
|||||||
@arg areaName Area name
|
@arg areaName Area name
|
||||||
*/
|
*/
|
||||||
bool opcode_0154(const ScriptArguments& args, const ScriptCharacter character, const ScriptString areaName) {
|
bool opcode_0154(const ScriptArguments& args, const ScriptCharacter character, const ScriptString areaName) {
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x0154);
|
return script::objectInZone(args, character.get(), areaName);
|
||||||
RW_UNUSED(character);
|
|
||||||
RW_UNUSED(areaName);
|
|
||||||
RW_UNUSED(args);
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -11418,16 +11285,18 @@ void opcode_03c5(const ScriptArguments& args, ScriptVec3 coord, const ScriptFloa
|
|||||||
@brief current_island == %1d%
|
@brief current_island == %1d%
|
||||||
|
|
||||||
opcode 03c6
|
opcode 03c6
|
||||||
@arg arg1
|
@arg island
|
||||||
*/
|
*/
|
||||||
bool opcode_03c6(const ScriptArguments& args, const ScriptLevel arg1) {
|
bool opcode_03c6(const ScriptArguments& args, const ScriptLevel island) {
|
||||||
// The paramter to this is actually the island number.
|
// The parameter to this is actually the island number.
|
||||||
// Not sure how that will fit into the scheme of full paging
|
// Not sure how that will fit into the scheme of full paging
|
||||||
/// @todo use the current player zone island number to return the correct value.
|
/// @todo use the current player zone island number to return the correct value.
|
||||||
RW_UNIMPLEMENTED_OPCODE(0x03c6);
|
// this might be very slow
|
||||||
RW_UNUSED(arg1);
|
auto world = args.getWorld();
|
||||||
RW_UNUSED(args);
|
auto plyChar = world->pedestrianPool.find(world->state->playerObject);
|
||||||
return true;
|
auto zone = world->data->findZoneAt(plyChar->getPosition());
|
||||||
|
|
||||||
|
return island == zone->island;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user