תפריט ראשי

תוצאות 1 עד 4 מ 4
  1. #1
    הצטרף בתאריך
    17.10.2007
    עיר
    אשקלון
    הודעות
    1,456
    טוב, האמת שפה זה די קשה בשבילי...
    ואני צריך עזרה...
    אני רוצה לעשות שברגע שמישהו עושה את הפקודה "/breakin" אז הוא יבדוק אם יש מכוניות בסביבה (קרובים), ואם כן שיקח את האיידי של אותה המכונית ויפתח אותה...

    להוסיף טיימר של זמן שיפתח וכאלה זה כבר שטויות... מה שהבעיה זה מה שרשמתי למעלה..
    יש לי את הפאבליק המוזר הזה או לא יודע מה זה של המרחק בין בנאדם למכונית מאיזה מוד שמצאתי..

    הנה הוא:
    [PHP]
    CheckPlayerDistanceToVehicle(Float:radi, playerid, vehicleid)
    {
    if(IsPlayerConnected(playerid))
    {
    new FloatX,FloatY,FloatZ,Float:X,Float:Y,Float:Z;
    GetPlayerPos(playerid,PX,PY,PZ);
    GetVehiclePos(vehicleid, X,Y,Z);
    new Floatistance = (X-PX)*(X-PX)+(Y-PY)*(Y-PY)+(Z-PZ)*(Z-PZ);
    if(Distance <= radi*radi)
    {
    return 1;
    }
    }
    return 0;
    }
    [/PHP]

    והפונקציה שאיתה משתמשים היא:
    [PHP]
    CheckPlayerDistanceToVehicle(Float:radi, playerid, vehicleid)
    [/PHP]

    ניסיתי לעשות את הפקודה אבל אני מקבל אירורים מהפאבליק המוזר הזה, כי אני לא יודע איפה להשים אותו, אבל הנה הקוד של ה "/breakin" (שגרגע לא עובד)
    [PHP]
    if(strcmp(cmd, "/breakin", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new b; b != MAX_VEHICLES; b++)
    new dist = CheckPlayerDistanceToVehicle(3.0, playerid, b);
    new breakcar = GetPlayerVehicleID(playerid);
    if(dist)
    {
    SetVehicleParamsForPlayer(breakcar,playerid,0,0);//unlocked
    }
    }
    return 1;
    }
    [/PHP]


    תודה רבהההההההההההההההה למי שעוזר!
    נערך לאחרונה על ידי Xclusive; 01.02.2009 בשעה 17:26.
    שתף ב-Google+

  2. #2
    הצטרף בתאריך
    14.11.2007
    הודעות
    6,174
    [PHP]
    if(strcmp(cmd, "/breakin", true) == 0)
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    for(new b; b != MAX_VEHICLES; b++)
    {
    if(IsVehicleInSphere(b, x,y,z, 3) SetVehicleParamsForPlayer(b,playerid,0,0);
    }
    return 1;
    }
    public IsVehicleInSphere(vehicleid,Float:x,Float:y,Float: z,radius)
    {
    if(GetVehicleDistanceToPointEx(vehicleid,x,y,z) < radius) return 1;
    return 0;
    }
    public GetVehicleDistanceToPointEx(vehicleid,Float:x,Floa t:y,Float:z)
    {
    new Float:x1, Float:y1, Float:z1, Float:tmpdis;
    GetVehiclePos(vehicleid,x1,y1,z1);
    tmpdis = floatsqroot(floatpower(floatabs(floatsub(x,x1)),2) +floatpower(floatabs(floatsub(y,y1)),2)+floatpower (floatabs(floatsub(z,z1)),2));
    return floatround(tmpdis);
    }
    [/PHP]

    תהנה
    שתף ב-Google+

  3. #3
    הצטרף בתאריך
    17.10.2007
    עיר
    אשקלון
    הודעות
    1,456
    נכתב במקור על ידי RonLipel
    [PHP]
    if(strcmp(cmd, "/breakin", true) == 0)
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    for(new b; b != MAX_VEHICLES; b++)
    {
    if(IsVehicleInSphere(b, x,y,z, 3) SetVehicleParamsForPlayer(b,playerid,0,0);
    }
    return 1;
    }
    public IsVehicleInSphere(vehicleid,Float:x,Float:y,Float: z,radius)
    {
    if(GetVehicleDistanceToPointEx(vehicleid,x,y,z) < radius) return 1;
    return 0;
    }
    public GetVehicleDistanceToPointEx(vehicleid,Float:x,Floa t:y,Float:z)
    {
    new Float:x1, Float:y1, Float:z1, Float:tmpdis;
    GetVehiclePos(vehicleid,x1,y1,z1);
    tmpdis = floatsqroot(floatpower(floatabs(floatsub(x,x1)),2) +floatpower(floatabs(floatsub(y,y1)),2)+floatpower (floatabs(floatsub(z,z1)),2));
    return floatround(tmpdis);
    }
    [/PHP]

    תהנה

    תודה אבל הבעיה שזה פותח את כל המכוניות XD...
    אני רוצה שיפתח מכונית אחת (זאת שהוא עומד לידה...)
    ד"א
    איפה שאני לא עומד, הוא פותח את המכונית...
    נערך לאחרונה על ידי Xclusive; 01.02.2009 בשעה 19:03.
    שתף ב-Google+

  4. #4
    הצטרף בתאריך
    14.11.2007
    הודעות
    6,174
    נכתב במקור על ידי iCoNN
    תודה אבל הבעיה שזה פותח את כל המכוניות XD...
    אני רוצה שיפתח מכונית אחת (זאת שהוא עומד לידה...)
    ד"א
    איפה שאני לא עומד, הוא פותח את המכונית...
    אופס.. טעות שלי תשנה את השורה של ה MAX_VEHICLES ל-
    [PHP]
    for(new b = 0; b < MAX_VEHICLES; b++)
    [/PHP]
    שתף ב-Google+

הרשמה