Suggestions for future SA:MP updates

New function for hide/show vehicles in the minimap
Many servers very need this because some vehicles need to be founded for some many reasons
Reply

Hi creators.
I have one such request. He would add public in style OnPlayerOpenChatBox?
I think it would be a lot of cases the use of this Public.

-----------------------------------------------------------------------------------------------------------------
Sorry for my english, i'm from Czech Republic
Reply

Quote:
Originally Posted by FizzyCZ
Посмотреть сообщение
Hi creators.
I have one such request. He would add public in style OnPlayerOpenChatBox?
I think it would be a lot of cases the use of this Public.

-----------------------------------------------------------------------------------------------------------------
Sorry for my english, i'm from Czech Republic
Better would be:
Deleting OnPlayerText,
add: OnPlayerChat

public OnPlayerChat(playerid, state[0 = close, 1 = opened], text[], success);

state = state of the chatbox (opened or closed)
text[] = text which gets send
success = if the text got send (or 0 = not send)
Reply

Quote:
Originally Posted by 'Pawno.
Посмотреть сообщение
Better would be:
Deleting OnPlayerText,
add: OnPlayerChat

public OnPlayerChat(playerid, state[0 = close, 1 = opened], text[], success);

state = state of the chatbox (opened or closed)
text[] = text which gets send
success = if the text got send (or 0 = not send)
I don't think that's a good idea
The callback will be called 3 times: when the player open the chatbox, when the player close the chatbox, when he send a message
That's three differents things, no reasons to assemble this in one callback
Reply

I'd love to see object scaling on global/player objects in future.
I've seen that Kalcor said it was possibile only on attached objects because they don't use collisions (thread), but what about disabling collisions when an object has a different scale from the standard 1.0?
It can bring to some very nice ways of mapping.

Reply

Код:
//PLAYERS
IsPlayerCollidingObject(playerid, objectid)
IsPlayerCollidingObjectOnFoot(playerid, objectid)
IsPlayerFiring(playerid)
SetPlayerVisiblity(playerid, bool:visible)
AttachPlayerToVehicleAsTurret(playerid, vehicleid, Float:fX, Float:fY, Float:fZ, seat, Float:angle, weaponid)
DetachPlayerFromVehicle(playerid)
IsPlayerInWater(playerid)
AttachPlayerToObjectAsTurret(playerid, objectid, Float:fX, Float:fY, Float:fZ, seat, Float:angle, weaponid)
IsPlayerDamagedByVehicle(playerid, vehicleid)
IsPlayerCollidingVehicle(playerid, vehicleid)
MakePlayerShootAtCoords(playerid, Float:x, Float:y, Float:z, time)
GetPlayerSpeed(playerid, &Float:speed)
IsPlayerInAir(playerid)
GetPlayerHeightAboveGround(playerid, &Float:height)
IsPlayerStuckUnderVehicle(playerid)
IsPlayerCollidingPlayer(playerid, collideplayerid)
SetPlayerSwimSpeed(playerid, Float:speed)
DisplayPlayerHud(playerid, bool:display)
DisplayPlayerRadar(playerid, bool:display)
EnablePlayerNightVision(playerid, bool:enable)
EnablePlayerThermalVision(playerid, bool:enable)
SetPlayerDarknessEffect(playerid, bool:set, value)

//OBJECTS
IsObjectOnPlayerScreen(objectid, playerid)
SetObjectCollision(objectid, bool:enable)
SetObjectDynamic(objectid, set)
IsPlayerAimingObject(playerid, objectid)
HasObjectBeenPhotographed(objectid)
SetObjectScale(objectid, Float:scale)

//VEHICLES
SetCarDrivingStyle(vehicleid, style)
IsCarStuckOnRoof(vehicleid)
SetVehicleWeight(vehicleid, Float:weight)
IsVehicleUpsideDown(vehicleid)
SetVehicleTaxiLights(vehicleid, bool:enable)
IsVehicleInWater(vehicleid)
IsVehicleOnScreen(vehicleid, forplayerid)
SetVehicleVisible(vehicleid, bool:enable)
IsVehicleStuck(vehicleid)
DisableUpsidedDownVehicleExplosion(vehicleid, bool:enable)
GetVehicleDriver(vehicleid, &driverid)
SetVehicleHandling(vehicleid, Float:handling)
SetVehicleRadioStation(vehicleid, radioid)
GetVehicleRadioStation(vehicleid)
ToggleVehicleControllable(vehicleid, bool:freeze)
GetVehicleMass(vehicleid, &Float:mass)
IsVehicleDamagedByPlayer(vehiceid, playerid)
SetVehicleQuaternion(vehicleid, Float:X, Float:Y, Float:Z)

//Other stuff
CreateSearchlight(Float:x, Float:y, Float:z, Float:endx, Float:endy, Float:endz, Float:radius, Float:endradius)
DestroySearchlight(searchlightid)
PointSearchlightAtVehicle(searchlightid, vehicleid, Float:movespeed)
IsVehicleInSearchlight(searchlightid, vehicleid)
GetPlayerSearchlightID(playerid)
And there's the OPCODE of functions (LINK)
I've tested some of this thinks and I can say it can be added in sa-mp (but there is some problem with changing object scale - the collide size isn't changing)
Reply

How could they MISSED this two important functions?
SetObjectVirtualWorld and SetObjectInterior
Reply

Quote:
Originally Posted by newbienoob
Посмотреть сообщение
How could they MISSED this two important functions?
SetObjectVirtualWorld and SetObjectInterior
Because you could use streamer where you can define in what interior/virtual world is your object?
Reply

Quote:
Originally Posted by B-Matt
Посмотреть сообщение
Because you could use streamer where you can define in what interior/virtual world is your object?
It's still a good way to get specific objects.
Reply

Quote:
Originally Posted by B-Matt
Посмотреть сообщение
Because you could use streamer where you can define in what interior/virtual world is your object?
What if I created an object in world 5 and want to set it to 0? I ain't gonna destroy it and re-create it. More works to do.
Reply



Thus several teams could customize the textures and jackets with logos.
Reply

Quote:
Originally Posted by newbienoob
Посмотреть сообщение
What if I created an object in world 5 and want to set it to 0? I ain't gonna destroy it and re-create it. More works to do.
Streamer_SetIntData(STREAMER_TYPE_OBJECT, object, E_STREAMER_WORLD_ID, 0);
Reply

Togglable free-aim (driveby) in boats and helicopters for SA-MP 0.4.

Please?
Reply

I'm hoping for boxing gloves objects soon.
Reply

ORIGINALLY SUGGESTED BY "MONARO"

Quote:

Hi.
I have a simple suggestion here. As some may know, you can adjust the size of the chatbox/textbox with /pagesize. I think we should be able to do this with the kill-list.

Something like this:
[spoiler][/spoiler]

COMMANDS
/killlistsize (6-12)
OR
/killlist size (6-12)

ADVANTAGES
Can maybe help DM reports or something alike.
People can use it for ''rolling'' screenshots

DISADVANTAGES
Comment if you have one.

Reply

What I'd actually love to see is something like:

GetPlayerCount();
Which can also store a variable so like...
GetPlayerCount(count);
Reply

Quote:
Originally Posted by Abagail
Посмотреть сообщение
What I'd actually love to see is something like:

GetPlayerCount();
Which can also store a variable so like...
GetPlayerCount(count);
Do you mean this?

pawn Код:
GetPlayerCount()
{
    for(new i; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
            count++;
    }

    return 1;
}
Or a better YSI version:

pawn Код:
Iter_Count(Player);
Reply

Quote:
Originally Posted by Abagail
Посмотреть сообщение
What I'd actually love to see is something like:

GetPlayerCount();
Which can also store a variable so like...
GetPlayerCount(count);
pawn Код:
GetPlayerCount(&count = 0)
{
    for (new i = 0, j = MAX_PLAYERS; i != j; ++ i)
    {
        if (IsPlayerConnected(i))
            ++ count;
    }
    return count;
}
Reply

Quote:
Originally Posted by Djole1337
Посмотреть сообщение
pawn Код:
GetPlayerCount(&count = 0)
{
    for (new i = 0, j = MAX_PLAYERS; i != j; ++ i)
    {
        if (IsPlayerConnected(i))
            ++ count;
    }
    return count;
}
A minor question, isn't declaring a new variable, assigning it, simply slowing down the loop?
Reply

Quote:
Originally Posted by Rajat_Pawar
Посмотреть сообщение
A minor question, isn't declaring a new variable, assigning it, simply slowing down the loop?
Yes that is pretty counterintuitive since MAX_PLAYERS is a constant anyway. It would make sense if 'j' was to store the return value of a function call in order to save the function from being called each iteration.
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)