03.12.2014, 15:03
Here, this code works:
You might want to add an extra check to see if the player is not in the quary (since that location is below waterlevel.
You might want to add an extra check to see if the player is not in the quary (since that location is below waterlevel.
pawn Код:
#include <a_samp>
new WalkWaterObject[MAX_PLAYERS];
new bool:WalkingOnWater[MAX_PLAYERS];
public OnPlayerCommandText(playerid, cmdtext[])
{
if (!strcmp(cmdtext, "/walkwater", true))
{
if(WalkingOnWater[playerid] == false)
{
WalkWaterObject[playerid] = CreatePlayerObject(playerid, 8661, 0.000000, 0.000000, 0.000000, 178.400314,0.000000,0.000000);
WalkingOnWater[playerid] = true;
SendClientMessage(playerid, 0x00FF00AA, "Walking on water enabled");
return 1;
}
else
{
DestroyPlayerObject(playerid, WalkWaterObject[playerid]);
WalkingOnWater[playerid] = false;
SendClientMessage(playerid, 0xFF0000AA, "Walking on water disabled");
}
return 1;
}
return 0;
}
public OnPlayerDisconnect(playerid, reason)
{
if(WalkingOnWater[playerid] == true)
{
DestroyPlayerObject(playerid, WalkWaterObject[playerid]);
WalkingOnWater[playerid] = false;
}
return 1;
}
public OnPlayerUpdate(playerid)
{
if(WalkingOnWater[playerid] == true)
{
new Float:pos[3];
GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
if(pos[2] < 2)
{
SetPlayerObjectPos(playerid, WalkWaterObject[playerid], pos[0], pos[1], 0.2);
}
}
return 1;
}

