#define FILTERSCRIPT#include <a_samp> #define PRESSED(%0) \\(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0))) //Ez a rész majd akkor lesz hasznunkra mikor lejjebb beállítjuk hogy melyik gombbal nyíljon a kapu. Valójában ezzel ismeri majd fel a megnyomott gombot... new sorompo; //hát tuladonképpen ennek is lejjebb lesz értelme forward close(); // ez az idõzítõ által meghívótt funkció #if defined FILTERSCRIPT public OnFilterScriptInit(){ print(\"\\n--------------------------------------\"); print(\" Blank Filterscript by your name here\"); print(\"--------------------------------------\\n\"); sorompo = CreateObject(968,1543.5000000,-1490.5999800,14.5000000,0.0000000,270.0000000,90.0000000); //object(barrierturn) (1) //na itt nyer értelmet a \"new sorompo;\" MERT: ugye mikor a MoveObject-et használjuk nem lenne túl kellemes ezt az egész hosszu sort az objectid helyére írni //ugye nem... ezért kell ez....HTTP mikor megdjuk hogy \"new sorompo;\" azt késõbb le kell írnunk hogy mi az a sorompo CreateObject(1250,1543.5999800,-1490.0999800,13.6000000,0.0000000,0.0000000,0.0000000); //object(smashbarpost) (1) //ez csak egy object hogy a sorompó valósághû legyen return 1;} public OnFilterScriptExit(){ return 1;} #endif public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) //na ez itt az érdekes része a dolgoknak....{ if(IsPlayerInRangeOfPoint(playerid, 5.0, 1543.5000000, -1490.5999800, 14.5000000)) // elenõrizzük hogy az illetõ a sorompó közelében van-e(pofon egyszerû az egész, csak a sorompó koordinátái kellenek és hozzá egy sugár(a körnek a sugara amin belül müködik a command)) { if(PRESSED(KEY_HANDBRAKE)) //a gomb neve... FONTOS: CSAK A JÁTÉKBAN SZEREPLÕ GOMB LEHET(pl: KEY_LOOK_BEHIND ; KEY_SUB_MISSION ; KEY_WALK) { MoveObject(sorompo, 1543.5, -1490.5999, 14.5, 1, 0, 0, 90); //mozdítjuk az objectet.... MoveObject(sorompo, 1543.5, -1490.5999, 14.5, [1], 0, 0, 90); <<----az 1-es a sebesség, bármilyen irányú mozgásról beszélünk is, annak ott a helye! SetTimer(\"close\", 4000, false); //beállítjuk az idõzítõt } } return 1;} public close(){ MoveObject(sorompo, 1543.5000000 ,-1490.5999800, 14.5000000, 1, 0, 270, 90); //ez pedig a már fent említett close...az idõzítõ beállítva, automatikus csukódás return 1;} //// A KÉRDÉS: honnan tudod meg az object id-jét, koordinátáit? EGYSZERÛ!!!: mikor mta-val mappolsz a mentéskor készül egy file amibe minden object belekerül, utána pedig csak egy convertert kell találni a neten. // kis bemutató
SetTimer(\"close\", 10, 270); //beállítjuk az idõzítõtpublic close(){new Float:rot = 270; MoveObject(sorompo, 1543.5000000 ,-1490.5999800, 14.5000000, 1, 0, rot, 90); //ez pedig a már fent említett close...az idõzítõ beállítva, automatikus csukódás rot-1; return 1;}
new sorompo;new Float:rot = 270;CMD:soromp(playerid, params[]){ sorompo = CreateObject(968,1543.5000000,-1490.5999800,14.5000000,0.0000000,270.0000000,90.0000000);SetTimer(\"close\", 7, 270); //beállítjuk az idõzítõtreturn 1;}forward close();public close(){ MoveObject(sorompo, 1543.5000000 ,-1490.5999800, 14.5000000, 1, 0, rot, 90); //ez pedig a már fent említett close...az idõzítõ beállítva, automatikus csukódás rot = rot - 1; return 1;}
new Float:rot = 270;