Szerző Téma: RC jármûvek  (Megtekintve 1172 alkalommal)

herban

  • Vendég
RC jármûvek
« Dátum: 2010. december 15. - 19:31:01 »
0 Show voters
Hello
Valaki letudná nekem írni, hogy meglehet-e oldani azt hogy belehessen szállni az rc jármûbe
És ki is lehessen.
Kösz

Nem elérhető Stray

  • 617
    • Profil megtekintése
RC jármûvek
« Válasz #1 Dátum: 2010. december 15. - 19:33:16 »
0 Show voters
« Utoljára szerkesztve: 2010. december 15. - 19:35:42 írta Stray »

herban

  • Vendég
RC jármûvek
« Válasz #2 Dátum: 2010. december 15. - 19:47:26 »
0 Show voters
Vmi baj van vele.. nem száll ki, de eddig megvan:
 
if(IsPlayerInAnyVehicle(playerid))
{
if(GetVehicleModel(vehicleid) == 432 || GetVehicleModel(vehicleid) == 425 || GetVehicleModel(vehicleid) == 447 || GetVehicleModel(vehicleid) == 520 || GetVehicleModel(vehicleid) == 464 || GetVehicleModel(vehicleid) == 564)
{
RemovePlayerFromVehicle(playerid);
}

Nem elérhető Stray

  • 617
    • Profil megtekintése
RC jármûvek
« Válasz #3 Dátum: 2010. december 15. - 19:49:08 »
0 Show voters
lemaradt egy } jel

herban

  • Vendég
RC jármûvek
« Válasz #4 Dátum: 2010. december 15. - 19:52:32 »
0 Show voters
De nem avval van a baj
Ki se száll

Nem elérhető Stray

  • 617
    • Profil megtekintése
RC jármûvek
« Válasz #5 Dátum: 2010. december 15. - 19:53:59 »
0 Show voters
Hát.. Hova raktad be?
OnPlayerKeyStateChange alá rakd.. azon belül meg.. 1 pill
szerk:
globálisan
 
#define PRESSED(%0) \\
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))

 


public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){
if(PRESSED( KEY_ACTION) ){
           if(IsPlayerInAnyVehicle(playerid)){
             if(GetVehicleModel(vehicleid) == 432 || GetVehicleModel(vehicleid) == 425 || GetVehicleModel(vehicleid)     == 447 || GetVehicleModel(vehicleid) == 520 || GetVehicleModel(vehicleid) == 464 ||          GetVehicleModel(vehicleid) == 564){
   RemovePlayerFromVehicle(playerid);
   }
    }
}
}

 
Remélem jolesz.
« Utoljára szerkesztve: 2010. december 15. - 20:00:47 írta Stray »

herban

  • Vendég
RC jármûvek
« Válasz #6 Dátum: 2010. december 15. - 20:12:16 »
0 Show voters
OFF:
De **** nem lehet kijelölni....

Nem elérhető Stray

  • 617
    • Profil megtekintése
RC jármûvek
« Válasz #7 Dátum: 2010. december 15. - 20:14:24 »
0 Show voters
Mit?

herban

  • Vendég
RC jármûvek
« Válasz #8 Dátum: 2010. december 15. - 21:00:13 »
0 Show voters
Na betudtam rakni, de nem mükõdik..:S
OFF: 2 fajta modon is megprobáltam de nem száll be az rc jármûbe

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
RC jármûvek
« Válasz #9 Dátum: 2010. december 15. - 21:09:47 »
0 Show voters
Elég primitív megoldás, de hirtelen ez jutott eszembe. Lehet nem fog mûködni, akkor esetleg próbáld meg az IsPlayerInRangeOfPoint függvény \'distance\' paraméterének növelését.
 

public OnPlayerKeyStateChange( playerid, newkeys ) {
if( newkeys & KEY_ACTION ) {
    if( GetPlayerState( playerid ) == PLAYER_STATE_ONFOOT ) {
    new Float: vehPos[ 3 ];
    for( new x = 0; x < MAX_VEHICLES; ++x ) {
        if( GetVehicleModel( x ) == 432 || GetVehicleModel( x ) == 425 || GetVehicleModel( x ) == 447 || GetVehicleModel( x ) == 520 || GetVehicleModel( x ) == 464 || GetVehicleModel( x ) == 564 ) {
         GetVehiclePos( x, vehPos[ 0 ], vehPos[ 1 ], vehPos[ 2 ] );
         if( IsPlayerInRangeOfPoint( playerid, 1.0, vehPos[ 0 ], vehPos[ 1 ], vehPos[ 2 ] ) ) {
             PutPlayerInVehicle( playerid, x, 0 );
            break;
         }
      }
   }
} else if( GetPlayerState( playerid ) == PLAYER_STATE_DRIVER ) {
   if( GetVehicleModel( GetPlayerVehicleID( playerid ) ) == 432 || GetVehicleModel( GetPlayerVehicleID( playerid ) ) == 425 || GetVehicleModel( GetPlayerVehicleID( playerid ) ) == 447 || GetVehicleModel( GetPlayerVehicleID( playerid ) ) == 520 || GetVehicleModel( GetPlayerVehicleID( playerid ) ) == 464 || GetVehicleModel( GetPlayerVehicleID( playerid ) ) == 564 ) {
       RemovePlayerFromVehicle( playerid );
   }
}
}
return 1;
}

herban

  • Vendég
RC jármûvek
« Válasz #10 Dátum: 2010. december 16. - 16:02:09 »
0 Show voters
Egy jó megoldás:
Csak meglehet oldani hogy az enterrel szálljon be?
 
#define RC_BANDIT    441
#define RC_BARON  464
#define RC_GOBLIN  501
#define RC_RAIDER  465
#define D_TRAM   449
#define RC_MINITANK   564
#define RC_CAM   594

if(newkeys == KEY_ACTION ){
        if(!IsPlayerInAnyVehicle(playerid)){
            new Float:x, Float:y, Float:z, vehicle;
            GetPlayerPos(playerid, x, y, z );
            GetVehicleWithinDistance(playerid, x, y, z, 20.0, vehicle);
            if(IsVehicleRc(vehicle)){
              PutPlayerInVehicle(playerid, vehicle, 0);
            }
        }
        else {
            new vehicleID = GetPlayerVehicleID(playerid);
            if(IsVehicleRc(vehicleID) || GetVehicleModel(vehicleID) == RC_CAM){
              if(GetVehicleModel(vehicleID) != D_TRAM){
                new Float:x, Float:y, Float:z;
                GetPlayerPos(playerid, x, y, z);
                SetPlayerPos(playerid, x+0.5, y, z+1.0);
                }
            }
        }
    }
}
GetVehicleWithinDistance( playerid, Float:x1, Float:y1, Float:z1, Float:dist, &veh){
    for(new i = 1; i < MAX_VEHICLES; i++){
        if(GetVehicleModel(i) > 0){
            if(GetPlayerVehicleID(playerid) != i ){
            new Float:x, Float:y, Float:z;
            new Float:x2, Float:y2, Float:z2;
            GetVehiclePos(i, x, y, z);
            x2 = x1 - x; y2 = y1 - y; z2 = z1 - z;
            new Float:vDist = (x2*x2+y2*y2+z2*z2);
            if( vDist < dist){
            veh = i;
            dist = vDist;
                }
            }
        }
    }
}
IsVehicleRc( vehicleid ){
  new model = GetVehicleModel(vehicleid);
  switch(model){
  case RC_GOBLIN, RC_BARON, RC_BANDIT, RC_RAIDER, RC_MINITANK: return 1;
  default: return 0;
    }
  return 0;
}
« Utoljára szerkesztve: 2010. december 16. - 16:19:02 írta herban »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal