Jump to content
  • 0

pomoc [Help] SetVehicleParamsEx - Doors


MontoA.SvK

Dotaz

Nazdar páni, robím príkazy do módu pre autá cez SetVehicleParamsEx, No zasekol som sa na otváraní a zatváraní dverí. Ostatné ako engine,kapota,svetlá fungujú, no dvere mi neotvorí. Používam dcmd. Skúste sa nato mrknúť.

 

Príkaz na otváranie dverí:

 

dcmd_opendoor(playerid, params[])
{
   #pragma unused params
 new vehicleid = GetPlayerVehicleID(playerid);
   if(GetVehicleModel(vehicleid) == 481 ||
   GetVehicleModel(vehicleid) == 509 ||
   GetVehicleModel(vehicleid) == 424 ||
   GetVehicleModel(vehicleid) == 430 ||
   GetVehicleModel(vehicleid) == 432 ||
   GetVehicleModel(vehicleid) == 446 ||
   GetVehicleModel(vehicleid) == 448 ||
   GetVehicleModel(vehicleid) == 449 ||
   GetVehicleModel(vehicleid) == 452 ||
   GetVehicleModel(vehicleid) == 453 ||
   GetVehicleModel(vehicleid) == 454 ||
   GetVehicleModel(vehicleid) == 457 ||
   GetVehicleModel(vehicleid) == 461 ||
   GetVehicleModel(vehicleid) == 462 ||
   GetVehicleModel(vehicleid) == 463 ||
   GetVehicleModel(vehicleid) == 468 ||
   GetVehicleModel(vehicleid) == 471 ||
   GetVehicleModel(vehicleid) == 472 ||
   GetVehicleModel(vehicleid) == 473 ||
   GetVehicleModel(vehicleid) == 484 ||
   GetVehicleModel(vehicleid) == 485 ||
   GetVehicleModel(vehicleid) == 486 ||
   GetVehicleModel(vehicleid) == 493 ||
   GetVehicleModel(vehicleid) == 512 ||
   GetVehicleModel(vehicleid) == 513 ||
   GetVehicleModel(vehicleid) == 519 ||
   GetVehicleModel(vehicleid) == 520 ||
   GetVehicleModel(vehicleid) == 521 ||
   GetVehicleModel(vehicleid) == 522 ||
   GetVehicleModel(vehicleid) == 523 ||
   GetVehicleModel(vehicleid) == 530 ||
   GetVehicleModel(vehicleid) == 531 ||
   GetVehicleModel(vehicleid) == 537 ||
   GetVehicleModel(vehicleid) == 538 ||
   GetVehicleModel(vehicleid) == 539 ||
   GetVehicleModel(vehicleid) == 553 ||
   GetVehicleModel(vehicleid) == 568 ||
   GetVehicleModel(vehicleid) == 571 ||
   GetVehicleModel(vehicleid) == 572 ||
   GetVehicleModel(vehicleid) == 577 ||
   GetVehicleModel(vehicleid) == 581 ||
   GetVehicleModel(vehicleid) == 586 ||
   GetVehicleModel(vehicleid) == 592 ||
   GetVehicleModel(vehicleid) == 593 ||
   GetVehicleModel(vehicleid) == 595 ||
   GetVehicleModel(vehicleid) == 510 )
{
SendClientMessage(playerid,COLOR_DARKRED,"[ ! ]: Toto vozidlo nemá dvere.");
}
else if(!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid,COLOR_DARKRED,"[ ! ]: Niesi vo vozidle.");
  }
  else
  {
GetVehicleParamsEx(vehicleid, motor, svetla, alarm, dvere, kapota, zkapota, object);
SetVehicleParamsEx(vehicleid, motor, svetla, alarm, 1, kapota, zkapota, object);
SendClientMessage(playerid, COLOR_ORANGE, "[ ! ]: Otvorili ste dvere na vozidle.");
}
return 1;
}

 

Príkaz na zatváranie dverí:

dcmd_closedoor(playerid, params[])
{
   #pragma unused params
 new vehicleid = GetPlayerVehicleID(playerid);
   if(GetVehicleModel(vehicleid) == 481 ||
   GetVehicleModel(vehicleid) == 509 ||
   GetVehicleModel(vehicleid) == 424 ||
   GetVehicleModel(vehicleid) == 430 ||
   GetVehicleModel(vehicleid) == 432 ||
   GetVehicleModel(vehicleid) == 446 ||
   GetVehicleModel(vehicleid) == 448 ||
   GetVehicleModel(vehicleid) == 449 ||
   GetVehicleModel(vehicleid) == 452 ||
   GetVehicleModel(vehicleid) == 453 ||
   GetVehicleModel(vehicleid) == 454 ||
   GetVehicleModel(vehicleid) == 457 ||
   GetVehicleModel(vehicleid) == 461 ||
   GetVehicleModel(vehicleid) == 462 ||
   GetVehicleModel(vehicleid) == 463 ||
   GetVehicleModel(vehicleid) == 468 ||
   GetVehicleModel(vehicleid) == 471 ||
   GetVehicleModel(vehicleid) == 472 ||
   GetVehicleModel(vehicleid) == 473 ||
   GetVehicleModel(vehicleid) == 484 ||
   GetVehicleModel(vehicleid) == 485 ||
   GetVehicleModel(vehicleid) == 486 ||
   GetVehicleModel(vehicleid) == 493 ||
   GetVehicleModel(vehicleid) == 512 ||
   GetVehicleModel(vehicleid) == 513 ||
   GetVehicleModel(vehicleid) == 519 ||
   GetVehicleModel(vehicleid) == 520 ||
   GetVehicleModel(vehicleid) == 521 ||
   GetVehicleModel(vehicleid) == 522 ||
   GetVehicleModel(vehicleid) == 523 ||
   GetVehicleModel(vehicleid) == 530 ||
   GetVehicleModel(vehicleid) == 531 ||
   GetVehicleModel(vehicleid) == 537 ||
   GetVehicleModel(vehicleid) == 538 ||
   GetVehicleModel(vehicleid) == 539 ||
   GetVehicleModel(vehicleid) == 553 ||
   GetVehicleModel(vehicleid) == 568 ||
   GetVehicleModel(vehicleid) == 571 ||
   GetVehicleModel(vehicleid) == 572 ||
   GetVehicleModel(vehicleid) == 577 ||
   GetVehicleModel(vehicleid) == 581 ||
   GetVehicleModel(vehicleid) == 586 ||
   GetVehicleModel(vehicleid) == 592 ||
   GetVehicleModel(vehicleid) == 593 ||
   GetVehicleModel(vehicleid) == 595 ||
   GetVehicleModel(vehicleid) == 510 )
{
SendClientMessage(playerid,COLOR_DARKRED,"[ ! ]: Toto vozidlo nemá dvere.");
}
  else if(!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid,COLOR_DARKRED,"[ ! ]: Niesi vo vozidle.");
}
  else
  {
GetVehicleParamsEx(vehicleid, motor, svetla, alarm, dvere, kapota, zkapota, object);
SetVehicleParamsEx(vehicleid, motor, svetla, alarm, 0, kapota, zkapota, object);
SendClientMessage(playerid, COLOR_RED, "[ ! ]: Zatvorili ste dvere na vozidle.");
}
return 1;
}

 

Tak isto som si vytvoril zapínanie svetiel, no to funguje bez problémov. Akurát cez deň nesvietia. To som vyriešil stockom, a podmienkou.

dcmd_lighton(playerid, params[])
{
  #pragma unused params
  new vehicleid = GetPlayerVehicleID(playerid);
  if(GetVehicleModel(vehicleid) == 481 ||
   GetVehicleModel(vehicleid) == 509 ||
   GetVehicleModel(vehicleid) == 510 )
{
SendClientMessage(playerid,COLOR_DARKRED,"[ ! ]: Bicykel nemá svetlá.");
}
  else if(!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid,COLOR_DARKRED,"[ ! ]: Niesi vo vozidle.");
}
	else if(!IsNightHour())
	{
SendClientMessage(playerid, COLOR_DARKRED,"[ ! ]: Nieje po 20tej hodine, načo budeš zapínať svetlá.");
}
else
  {
  GetVehicleParamsEx(vehicleid, motor, svetla, alarm, dvere, kapota, zkapota, object);
SetVehicleParamsEx(vehicleid, motor, 1, alarm, dvere, kapota, zkapota, object);
SendClientMessage(playerid, COLOR_ORANGE, "[ ! ]: Zapli ste si svetlá.");
}

 

Prosím o radu kde robím chybu...Vďaka ;)

Link to comment
Share on other sites

8 odpovědí na tuto otázku

Recommended Posts

  • 0
  • Administrátor
Skúšal som aj miesto "1" alebo "true" dať "VEHICLE_PARAMS_ON" no nepomáha... Neotvorí dvere...Mám samp verziu 0.3e

Nemá to otevírat dveře ale odemykat a uzamykat

Link to comment
Share on other sites

  • 0
  • Administrátor
Jaaaj, no myslel som že otvorí dvere keďže kapoty mi otvára. Ako sa teda dajú otvoriť dvere?

Nijak leda zmáčnout F :d ne pouze to zamyká a odemyká dveře jak jsem říkal výše :)

Máš to napsané i na wikině

 

http://wiki.sa-mp.com/wiki/SetVehicleParamsEx

doors Toggle the lock status of the doors.
Link to comment
Share on other sites

  • 0
Takže to nejde nijak čo? Ja som videl toto video
a všimol som si tie otvorené dvere. Myslel som že to je pomocou tejto funkcie.

 

To je jen cleo script na otevření dveří.

Link to comment
Share on other sites

  • 0

No prerobil som príkaz cez UpdateVehicleDamageStatus. Funguje to, len tam je problém vtom že po napísaní príkazu otvorí dvere no hneď ich aj zavrie :d Neviete o spôsobe ako to obísť aby dvere ostali otvorené a hráč by sedel v aute? Mám to takto:

 

 

GetVehicleDamageStatus(vehicleid,panel,dvere,svetla,gumy);
printf("Kasna: %d Dvere: %d Svetla: %d Gumy: %d",panel,dvere,svetla,gumy);
UpdateVehicleDamageStatus(vehicleid, panel, 65536, svetla, gumy);

 

Ten printf som tam dal preto, lebo musíte zistíť číslo v desiatkovej sústave napr.(65536). Inak by ste museli vytvoriť to číslo v dvojkovej sústave(0,1) a potom ho previesť na desiatkovú. Takto vám po nasadnutí do auta a napísaní príkazu, zistí to číslo GetVehicleDamageStatus ;)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...