Szerző Téma: Kocsi probléma  (Megtekintve 1415 alkalommal)

Kocsi probléma
« Dátum: 2011. szeptember 21. - 17:11:24 »
0 Show voters
Sziasztok volna egy olyan problémám hogy ha beleülök  például egy szerelõ kocsiba akkor azt írja ki hogy nam vagy betonos és kidob a kocsiból.
Nem tudomm hogy hogyan javítsam ki akinek lenne valami ötlete az kérem írjon..
Elõre is köszönöm..

Kocsi probléma
« Válasz #1 Dátum: 2011. szeptember 21. - 17:16:00 »
0 Show voters
Hát ebbõl sokat nem tudtunk meg..
Ha bemásolod
[pawn]
public OnPlayerEnterVehicle
[/pawn]
eljárást, akkor tudunk segíteni.

Kocsi probléma
« Válasz #2 Dátum: 2011. szeptember 21. - 17:24:20 »
0 Show voters
tessék ez az
 
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(gTeam[playerid] >= 1||gTeam[playerid] >= 3||gTeam[playerid] >= 4)
{
if (RendorKocsik(vehicleid) && !ispassenger)
{
   if(PlayerInfo[playerid][pLeader]==1||PlayerInfo[playerid][pLeader]==2||PlayerInfo[playerid][pLeader]==3||PlayerInfo[playerid][pMember]==1||PlayerInfo[playerid][pMember]==2||PlayerInfo[playerid][pMember]==3) {}
    else {
      //WantedPoints[playerid]+=2;
      //SetPlayerCriminal(playerid,255, \"Stealing A Police Vehicle\");
      new Float:cx, Float:cy, Float:cz;
      GetPlayerPos(playerid, cx, cy, cz);
      SetPlayerPos(playerid, cx,  cy, cz);
   }
}
if (Buszok(vehicleid) && !ispassenger)
{
   if ( PlayerInfo[playerid][pJob] == 18 )
   {
       SendClientMessage(playerid, COLOR_GREY,\"Munka megkezdéséhez használd a /munkakezdés parancsot.\");
   }
    else
   {
      SendClientMessage(playerid,COLOR_GRAD2,\"Nem vagy buszsofõr!\");
       TogglePlayerControllable(playerid, 1);
               RemovePlayerFromVehicle(playerid);
   }
}
if (IsNgCar(vehicleid) && !ispassenger)
{
    if(PlayerInfo[playerid][pLeader]==1||PlayerInfo[playerid][pLeader]==2||PlayerInfo[playerid][pLeader]==3||PlayerInfo[playerid][pMember]==1||PlayerInfo[playerid][pMember]==2||PlayerInfo[playerid][pMember]==3) {}
    else {
      //WantedPoints[playerid]+=2;
      //SetPlayerCriminal(playerid,255, \"Stealing A Police Vehicle\");
      new Float:cx, Float:cy, Float:cz;
      GetPlayerPos(playerid, cx, cy, cz);
      SetPlayerPos(playerid, cx,  cy, cz);
   }
}
if (IsAnAmbulance(vehicleid) && !ispassenger)
{
    if(PlayerInfo[playerid][pMember]==4 || PlayerInfo[playerid][pLeader]==4) { }
    else {    new Float:cx, Float:cy, Float:cz;
         GetPlayerPos(playerid, cx, cy, cz);
         SetPlayerPos(playerid, cx,  cy, cz); }
}
if (IsATank(vehicleid) && !ispassenger)
{
   if(PlayerInfo[playerid][pLeader]==1||PlayerInfo[playerid][pLeader]==3||PlayerInfo[playerid][pMember]==3) {}
    else { SendClientMessage(playerid, COLOR_GREY,\"You don\'t know how to drive it yet.\"); }
}
if(IsAnOwnableCar(vehicleid) && CarInfo[vehicleid][cLock] == 1 && CarInfo[vehicleid][cOwned] == 1)
{
   if(kerekbilincs[GetPlayerVehicleID(playerid)] != 0)
    {
        SendClientMessage(playerid, COLOR_LIGHTRED, \"Ezen az autón kerékbilincs van! Hívj szerelõt és leszedi!\");
        RemovePlayerFromVehicle(playerid);
        TogglePlayerControllable(playerid, 1);
       return 1;
    }
    if(Admin(playerid, 3) && AdminDuty[playerid] == 1) { }
    else
    {
       new Float:cx, Float:cy, Float:cz;
       GetPlayerPos(playerid, cx, cy, cz);
       SetPlayerPos(playerid, cx, cy, cz);
   }
}
}
return 1;
}
public IsAnInstructor(playerid)
{
if(IsPlayerConnected(playerid))
{
    new leader = PlayerInfo[playerid][pLeader];
    new member = PlayerInfo[playerid][pMember];
    if(member==11)
{
    return 1;
}
if(leader==11)
{
    return 1;
}
}
return 0;
}
public IsAMember(playerid)
{
if(IsPlayerConnected(playerid))
{
    new leader = PlayerInfo[playerid][pLeader];
    new member = PlayerInfo[playerid][pMember];
    if(member==5 || member==6 || member==8 || member==14 || member==15 || member==16)
{
    return 1;
}
if(leader==5 || leader==6 || leader==8 || leader==14 || leader==15 || leader==16)
{
    return 1;
}
}
return 0;
}
public IsACop(playerid)
{
if(IsPlayerConnected(playerid))
{
    new leader = PlayerInfo[playerid][pLeader];
    new member = PlayerInfo[playerid][pMember];
    if(member==1 || member==2 || member==3)
{
    return 1;
}
else if(leader==1 || leader==2 || leader==3)
{
    return 1;
}
}
return 0;
}
public IsAPDMember(playerid)
{
if(IsPlayerConnected(playerid))
{
    new leader = PlayerInfo[playerid][pLeader];
    new member = PlayerInfo[playerid][pMember];
    if(member==1)
{
    return 1;
}
else if(leader==1)
{
    return 1;
}
}
return 0;
}
public IsAnOwnableCar(vehicleid)
{
if(vehicleid >= 200 && vehicleid <= 551) { return 1; } //kocsilimit
return 0;
}

]XziBiT[

  • Vendég
Kocsi probléma
« Válasz #3 Dátum: 2011. szeptember 21. - 17:36:58 »
+2 Show voters
#define TEAM_betonos 1234
new gTeam[MAX_PLAYERS];

 

public OnPlayerStateChange(playerid,newstate,oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(playerid);
        if(GetVehicleModel(vehicleid) == Jármû modell ID)//ide a jármû id-jét kell írni.
       {
           if(gTeam[playerid] == TEAM_betonos)
           {
               RemovePlayerFromVehicle(playerid);
               SendClientMessage(playerid, red, \"Ez a jármû a betonkeverõké!\");
           }
       }
return 1;
}

 
Tessék! nincs tesztelve!

Kocsi probléma
« Válasz #4 Dátum: 2011. szeptember 21. - 18:07:22 »
+1 Show voters
és ezt megcsinálhatom külön mindegyik munkára is?

]XziBiT[

  • Vendég
Kocsi probléma
« Válasz #5 Dátum: 2011. szeptember 21. - 18:09:38 »
+2 Show voters
igen!
Itt egy példa:
 
public OnPlayerStateChange(playerid,newstate,oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
      new vehicleid = GetPlayerVehicleID(playerid);
        if(GetVehicleModel(vehicleid) == Jármû modell ID)//ide a jármû id-jét kell írni.
       {
           if(gTeam[playerid] == TEAM_betonos)
           {
               RemovePlayerFromVehicle(playerid);
               SendClientMessage(playerid, red, \"Ez a jármû a betonkeverõké!\");
           }
       }
        if(GetVehicleModel(vehicleid) == Jármû modell ID)//ide a jármû id-jét kell írni.
       {
           if(gTeam[playerid] == TEAM_rendor)
           {
               RemovePlayerFromVehicle(playerid);
               SendClientMessage(playerid, red, \"Ez a jármû a rendõröké!\");
           }
       }
return 1;
}

 
Szerintem így kell.

Nem elérhető JackBronson

  • 1499
  • ??
    • Profil megtekintése
Kocsi probléma
« Válasz #6 Dátum: 2011. szeptember 21. - 18:13:19 »
+1 Show voters
Ha azt akarod,hogy ne dobja ki a játékost a kocsibol akkor ezt a fügvényt vedd ki az OnPlayerEnterVehicle alól
RemovePlayerFromVehicle(playerid);
Ebbõl ott több is van szóval azokat vedd ki

Kocsi probléma
« Válasz #7 Dátum: 2011. szeptember 21. - 21:00:06 »
0 Show voters
Ezt értem de én úgy szeretném megoldani hogy akárki akármelyik kocsiba ne szálhasson be viszont jo legyen hogy a szerelõ csak a szerelõ kocsiba .....már próbáltam hogy a kocsi ID-ket kicserélni hogy menjen de sajnos úgy se volt jó

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal