שלום. מאחר שהרבה ילדים אמרו לי שהם לא הבינו תמדריכים שלי כי זה למתקדמים בשבילם , אז אני יעשה במיוחד בשבילכם מדריכים על פונקציות ודברים בסיסים (:
מזה פקודה ? , כולכם יודעים מהי פקודה אני חושב.. אין מה להסביר (: אני רק יסביר איך ליצור אותה .
קודם , נלך לפאבליק OnPlayerCommandText
זאת השורה הראשונה של הפקודה :
נגיד ונרצה שהפקודה תיהיה LeTmE/ אז נעשה ככהקוד:if(strcmp(cmdtext, "/כאן זה איך תיהיה הפקודה", true)==0)
מתחת כל שרה כזאת , צריך לפתוח בניין . מהו בניין ? בניין זה המקום ששים בו את הפעולות (פונקציות) שיהיה בפקודה . כך נראה בנייןקוד:if(strcmp(cmdtext, "/LeTmE", true)==0)
שמתכם ל { } ? , זה בניין בתוכו יהיה הפונקציות ומתחת זה ה Retrun אם נעשה Retrun 1; אז הפקודה תבצע פעולות אם נעשה Retrun 0; הפקודה לא תבצע שום דבר.קוד:if(strcmp(cmdtext, "/LeTmE", true)==0) { //זה אמצע הבניין , כאן יהיו הפעולות של הפקודה return 1; }
אוקי נמשיך. עכשיו נגיד ונשים את הפונקציה SendClientMessage מהי בעצם הפונקציה הזאת ? זאתי פונקציה של הודעה ..ככה היא נראת
עכשיו נגיד ונקח צבע לבן , ובהודעה נרצה שיהיה כתוב "ברוך הבא" נעשה ככהקוד:SendClientMessage(playerid,Color,"הודעה");
ואז נשים את הפונקציה שעשינו בין הבניין של הפקודה ככה :קוד:SendClientMessage(playerid,0xFFFFFFFF,"ברוך הבא");
מה עשינו כאן ? מתי שנעשה את הפקודה LeTmE/ אז זה יחזיר לנו הודעה ברוך הבא בצבע לבן .קוד:if(strcmp(cmdtext, "/LeTmE", true)==0) { SendClientMessage(playerid,0xFFFFFFFF,"ברוך הבא"); return 1; }
נכון שזה קל (: ?
נמשיך ליצירת שיגור.
כמו שעשינו למעלה יצרנו פקודה ובתוכה פונקציה , במקום הפונקציה SendClientMessage נשים את הפונקציה SetPlayerPos.
מהי בעצם הפונקציה SetPlayerPos ? פונקציה זאת תשגר אותך לפי הX Y Z ששמתה בתוכה . מהם X Y Z ? אלו זוויות שדרכם מוצאים מיקום , אוקי נלך למשחק
נגיד ונרצה לעשות שיגור לLV אז נלך למקום יפה בLV (בתוך המשחק) ונעשה שם את הפקודה save Lv/
לאחר מכן לכו לתיקיה GTA San Andreas User Files (אצלי היא נמצאת בתוך המסמכים שלי) בתוך התיקיה יש עוד תיקיה שקוראים לה SAMP תכנסו אליה
ואז תראו שם מסמך טקסט בשם savedpositions כנסו אליו ותראו שם שורה
AddPlayerClass(271,2127.4995,2379.6487,10.8203,1.7858,0,0,0,0,0,0); // Lv
מתוך השורה הזאת ניקח את הזוויות שלנו (X Y Z )
זווית X - צבע אדום
זווית Y - צבע כחול
זווית Z -צבע ירוק
לאחר שמצאנו את הזוויות שלנו נלך לפונקציה SetPlayerPos ונשים שם את הזוויות ככה
הPlayerid זה השחקן שמבצע את הפונקציה .קוד:SetPlayerPos(playerid,2127.4995,2379.6487,10.8203);
נעשה כמו שעשינו למעלה ניקח את הפקודה שיצרנו זאת :
ונשנה אותה לככהקוד:if(strcmp(cmdtext, "/LeTmE", true)==0) { SendClientMessage(playerid,0xFFFFFFFF,"ברוך הבא"); return 1; }
וזהו יצרנו שיגור ,ובשביל שיהיה יפה אז נשים שם גם את הפונקציה SendClientMessageקוד:if(strcmp(cmdtext, "/Lv", true)==0) { SetPlayerPos(playerid,2127.4995,2379.6487,10.8203); return 1; }
ונעשה ככה
זהו (: יצרנו שיגור , נכון שזה קל D: ?קוד:if(strcmp(cmdtext, "/Lv", true)==0) { SetPlayerPos(playerid,2127.4995,2379.6487,10.8203); SendClientMessage(playerid,0xFFFFFFFF, "ברוך הבא ל LV"); return 1; }
עכשיו , נלמד גם איך לעשות PickUp , מהו PickUp ? פיקאפ זה נשק צף , כמו עוזי שאתה עובר עליו ואז אתה מקבל אותו , כמו חיים שאתה עובר מעליו ואז יתמלא לך חיים .
זאת הפונקציה של הוספת פיקאפ
Id - האיידי של הפיקאפ , ניתן למצוא אותו כאן http://wiki.sa-mp.com/wiki/Pickup_IDsקוד:AddStaticPickup(id,15,X,Y,Z);
15 - לא לגעת (זה צורת המראה של הפיקאפ)
X Y Z - המיקום של הפיקאפ , תעשו לפי מה שהדרכתי למעלה .
נגיד ונרצה להוסיף את הפיקאפ של המגן האיידי שלו הוא 1242 אז נעשה ככה :
תוסיפו אתם את המיקום ושימו את הפונקציה בOnGameModInitקוד:AddStaticPickup(1242,15,X,Y,Z);
הוספת מכוניות למוד , זה בין הדברים הקלים ביותר בבניה .. אתם צריכים להכנס לרכב נגיד נכנסתם לNRG-500 הולכים למיקום שאתם רוצים להציב בו מכונית ,עושים save/ לאחר מכן הולכים לקובץ
שם תמצאו את השורה הזאת
522 זה האיידי של האופנוע NRGקוד:AddStaticVehicle(522,X,Y,Z,A,color1,color2);
X Y Z A המיקום (זוויות)
color 1 - צבע הראשון
color 2- צבע שני
זהו למדריך , החלק הבא :
לימוד מספר פונקציות שימושיות .
מדריך זה נוצר על ידי אין שום הסכמה להעתיק או לגנוב שורות !




הירשם כדי להגיב לנושא

