| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946 |
- //COMANDOS
- CMD:down(playerid)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.5, -801.2491,-389.6520,1402.1588))
- SetPlayerPos(playerid,2268.0032,2448.8892,3.5313);
- SetPlayerInterior(playerid, 0);
- SetPlayerInterior(playerid, 5);
- SetPlayerVirtualWorldEx(playerid, 911);
- return 1;
- }
- CMD:up(playerid)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.5, 2268.0032,2448.8892,3.5313))
- SetPlayerPos(playerid,-801.2173,-389.4684,1402.1588);
- SetPlayerInterior(playerid, 5);
- SetPlayerVirtualWorldEx(playerid, 2);
- return 1;
- }
- //comandos de teste a cima 911
- CMD:reconnectmysql(playerid)
- {
- if(IsPlayerAdminLevelOK(playerid, 1))
- {
- mysql_reconnect(conn);
- if(mysql_errno() == 0)
- {
- SysMsg(playerid, "MySQL re-connected.");
- }
- }
- else return SysMsg(playerid, CMDFMSG);
- return true;
- }
- CMD:register(playerid)
- {
- if(Logged{playerid}) return SysMsg(playerid,"Você já está logado; você não precisa se registrar.");
- SysMsg(playerid, "O registro só está disponível on-line em greensiderp.com/register.");
- return true;
- }
- CMD:versao(playerid)
- {
- SysMsgF(playerid, "[Game Mode] %s - %s (/creditos)", GAMEMODE, VERSION);
- new hours, minutes, days, uptime;
- uptime = gServerUptime;
- if(uptime > 1440)
- {
- do
- {
- uptime -= 1440;
- days += 1;
- }
- while(uptime > 1440);
- }
- if(uptime > 60)
- {
- do
- {
- uptime -= 60;
- hours += 1;
- }
- while(uptime > 60);
- }
- minutes = uptime;
- SysMsgF(playerid, "Tempo de serviço do servidor: %i dias %i horas e %i minutos", days, hours, minutes);
- SysMsg(playerid, "Ver /statistics para algumas estatísticas interessantes relacionadas ao servidor!");
- return true;
- }
- CMD:statistics(playerid)
- {
- if(!Logged{playerid}) return true;
- #define query1 "SELECT COUNT(id) FROM masters"
- #define query2 "SELECT COUNT(id) FROM players"
- #define query3 "SELECT players FROM ucpplayerscron ORDER BY players DESC LIMIT 1"
- #define query4 "SELECT COUNT(id) FROM houses"
- #define query5 "SELECT COUNT(id) FROM bizz"
- #define query6 "SELECT COUNT(id) FROM hfurniture"
- mysql_format(conn, mquery, sizeof(mquery), "SELECT (%s) AS macount, (%s) AS charcount, (%s) AS highestplayercount, (%s) AS housecount, (%s) AS bizzcount, (%s) AS furncount", query1, query2, query3, query4, query5, query6);
- mysql_pquery(conn, mquery, "LoadStatisticsNumbers", "i", playerid);
- return true;
- }
- GREENSIDE::LoadStatisticsNumbers(playerid)
- {
- if(!cache_num_rows()) return SysMsg(playerid, "Error.");
- gstr[0] = EOS;
- #define MSG1 "Contagem de jogador mais alta: {FFFFFF}%i{A9C4E4}\nTotal de contas Master: {FFFFFF}%s{A9C4E4}\nTotal Character criados: {FFFFFF}%s{A9C4E4}\nTotal de Casas: {FFFFFF}%s{A9C4E4}\nTotal Negocio: {FFFFFF}%i{A9C4E4}\n"
- #define MSG2 "Total de mensagens de bate-papo enviadas: {FFFFFF}%s{A9C4E4}\nTotal de comandos enviados: {FFFFFF}%s{A9C4E4}\nTotal de /me feitos: {FFFFFF}%s{A9C4E4}\n\n"
- #define MSG3 "Estatísticas do plugin de streamer:\nTotal Objetos: {FFFFFF}%s{A9C4E4}\nTotal de Map Icons: {FFFFFF}%i{A9C4E4}\nTotal de Pickups: {FFFFFF}%s{A9C4E4}\nTotal de 3D Text labels: {FFFFFF}%s{A9C4E4}\n\nObjects visiveis para você: {FFFFFF}%i{A9C4E4}"
- new pcount, macount, charcount, housecount, bizzcount, furncount;
- pcount = cache_get_field_content_int(0, "highestplayercount");
- macount = cache_get_field_content_int(0, "macount");
- charcount = cache_get_field_content_int(0, "charcount");
- housecount = cache_get_field_content_int(0, "housecount");
- bizzcount = cache_get_field_content_int(0, "bizzcount");
- furncount = cache_get_field_content_int(0, "furncount");
- format(sgstr, sizeof(sgstr), MSG1, pcount, format_cash(macount), format_cash(charcount), format_cash(housecount), bizzcount);
- strcat(gstr, sgstr);
- format(tgstr, sizeof(tgstr), "Total Furniture: {FFFFFF}%s{A9C4E4}\n\n", format_cash(furncount));
- strcat(gstr, tgstr);
- format(sgstr, sizeof(sgstr), MSG2, format_cash(totalchat), format_cash(totalcmds), format_cash(totalmes));
- strcat(gstr, sgstr);
- format(sgstr, sizeof(sgstr), MSG3, format_cash(CountDynamicObjects()), CountDynamicMapIcons(), format_cash(CountDynamicPickups()), format_cash(CountDynamic3DTextLabels()), Streamer_CountVisibleItems(playerid, STREAMER_TYPE_OBJECT));
- strcat(gstr, sgstr);
- Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Stats do servidor", gstr, "Fechar", "");
- return true;
- }
- CMD:uptime(playerid) return cmd_versao(playerid);
- /*CMD:credits(playerid)
- {
- if(!Logged{playerid}) return true;
- SendClientMessage(playerid, COLOR_WHITE, " ");
- SendClientMessage(playerid, COLOR_LIGHTRED, "Red County Roleplay");
- SendClientMessage(playerid, COLOR_WHITE, "Coded by Alec Rae | 2009-2013 | alec@redcountyrp.com");
- SendClientMessage(playerid, COLOR_WHITE, "Coded by Tommy Breshears | 2013 - Present");
- SendClientMessage(playerid, COLOR_WHITE, "Coded with the assistance of Adam Booth | 2013 - 2014");
- SendClientMessage(playerid, COLOR_WHITE, "Special thanks to Lionel, BigD, Peach and MP2 for certain script additions.");
- SendClientMessage(playerid, COLOR_WHITE, "Red County Roleplay makes use of plugins and libraries created by Incognito, Y_Less, MP2, BlueG and Zeex");
- SendClientMessage(playerid, COLOR_WHITE, " ");
- return true;
- }
- CMD:changelog(playerid)
- {
- if(!Logged{playerid}) return true;
- new changelog[3200];
- strcat(changelog, "{FF0000}2.3.11 R1 - 1 de junho de 2017{FFFFFF}\n");
- strcat(changelog, "/cinfo now shows phone signal.\n");
- strcat(changelog, "Added an engine start delay for helicopters/planes.\n");
- strcat(changelog, "Personal vehicles with their windows rolled down can now be unlocked by anybody.\n");
- strcat(changelog, "The type of fuel in a player's fuel can will now show in /inventario.\n");
- strcat(changelog, "Changed the warehouse interior to a blank space with only one wall object at the entrance. This will allow users to add bottom floors to their homes and etc.\n");
- strcat(changelog, "Fixed a bug where certain vehicle mods couldn't be removed with /removemods.\n");
- strcat(changelog, "Fixed a bug where /stopguestfurnish would save incorrect values.\n");
- strcat(changelog, "Fixed a bug where cancelling the repositioning of a clothing object wouldn't reapply its color if one was assigned.\n");
- strcat(changelog, "Fixed a bug where incorrect businesses were marked as 'Mall' businesses.\n");
- strcat(changelog, "Fixed some issues where the pizza vehicles could be put into repair garages, causing them to be removed permanently.\n");
- strcat(changelog, "Fixed a handful of issues with the impound system.\n");
- strcat(changelog, "Fixed a bug where being put in jail could send you to prison after a relog.\n");
- strcat(changelog, "Fixed bugs that prevented the engine oil alert textdraw from appearing.\n");
- strcat(changelog, "Fixed /resetvest once more.\n\n");
- strcat(changelog, "{FF0000}2.3.11 - May 12th 2016{FFFFFF}\n");
- strcat(changelog, "Phone SMS history will now show a list of numbers players have sent/received texts to/from.\n");
- strcat(changelog, "Added pagination to SMS history lists and modified the list slightly.\n");
- strcat(changelog, "Guest furnish access no longer disappears after logging out and must now be manually revoked.\n");
- strcat(changelog, "Internally remade phone contacts and increased the contacts limit based on donator level.\n");
- strcat(changelog, "Executing a downed player now requires one headshot instead of two.\n");
- strcat(changelog, "Flats will no longer show up in the unowned property list.\n");
- strcat(changelog, "Trunks can now be used on motorbikes with very limited weapon storage space.\n");
- strcat(changelog, "Fixed a bug where taxis could be called from indoors, giving incorrect beacons.\n");
- strcat(changelog, "Fixed a bug where armor vests could disappear after reconnecting.\n");
- strcat(changelog, "Fixed a bug where Taxi signs could get stuck on vehicles.\n");
- strcat(changelog, "Fixed a bug where the scrap vehicle timer wouldn't end when a player disconnected, occasionally causing incorrect vehicle deletions.\n");
- strcat(changelog, "Fixed more bugs with the weed system.\n\n");
- strcat(changelog, "{FF0000}2.3.10 - April 20th 2016{FFFFFF}\n");
- strcat(changelog, "Too large to show here. View at http://redcountyrp.com/changelog/server\n\n");
- strcat(changelog, "{FF0000}Find a full list of previous updates at http://redcountyrp.com/changelog/server!{FFFFFF}");
- ShowMessage(playerid, "Latest Updates", changelog, "Fechar!");
- return true;
- }*/
- CMD:limparchat(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- for(new i = 0; i < 20; i++) SendClientMessage(playerid, COLOR_WHITE, " ");
- return true;
- }
- CMD:characters(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!MasterAccountLogged{playerid}) return SysMsg(playerid, "Você deve estar logado em uma Conta Mester primeiro.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT Name FROM players WHERE MasterAccount = %i ORDER BY id ASC LIMIT 4", MasterAccount[playerid]);
- mysql_pquery(conn, mquery, "ShowCharacters", "d", playerid);
- return true;
- }
- CMD:contamaster(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!MasterAccountLogged{playerid}) return SysMsg(playerid, "Você deve estar logado em uma conta Master primeiro. (/malogin)");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT EMail, RecentIP, LastLog, State FROM masters WHERE id = %i", MasterAccount[playerid]);
- mysql_pquery(conn, mquery, "MAInfo", "d", playerid);
- return true;
- }
- CMD:ma(playerid, params[]) return cmd_contamaster(playerid, params);
- CMD:donation(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- mysql_format(conn, mquery, sizeof(mquery), "SELECT DonationCash, DonationWLevel, DonationPLevel, DonationDLevel, DonationCarModel, RefundXP FROM players WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "ProcessDonation", "d", playerid);
- return true;
- }
- CMD:transferdonatorlevel(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsDonator[playerid]) return SysMsg(playerid, "Você não é um usuario donate.");
- new accountname[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", accountname)) return SysMsg(playerid, "Use: /transferdonatorlevel [Nome_Sobrenome]");
- new sqlid = MySQLCheckAccount(accountname, playerid);
- if(sqlid == 0) return SysMsg(playerid, "O nome não foi encontrado. Inclua primeiro nome, sobrenome e um sublinhado (Nome_Sobrenome).");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT IsDonator FROM players WHERE id = %i", sqlid);
- mysql_pquery(conn, mquery, "CheckDonationTransfer", "iis", playerid, sqlid, accountname);
- return true;
- }
- GREENSIDE::CheckDonationTransfer(playerid, sqlid, accountname[])
- {
- new donatorlevel = cache_get_field_content_int(0, "IsDonator");
- if(donatorlevel > 0) return SysMsg(playerid, "Essa conta já é Donate.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT AmountDonated FROM players WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "ProcessDonationTransfer", "iisi", playerid, sqlid, accountname);
- return true;
- }
- GREENSIDE::ProcessDonationTransfer(playerid, sqlid, accountname[])
- {
- new donatorlevel = IsDonator[playerid];
- new amountdonated = cache_get_field_content_int(0, "AmountDonated");
- IsDonator[playerid] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET IsDonator = %i, AmountDonated = %i WHERE id = %i", donatorlevel, amountdonated, sqlid);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET IsDonator = 0, AmountDonated = 0 WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM `ignore` WHERE PlayerSQLID=%i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- foreach(new i: Player)
- {
- if(SQLID[i] == sqlid)
- {
- IsDonator[i] = donatorlevel;
- SendClientMessageF(i, COLOR_WHITE, "%s deu level de Donate para você.", NameEx(playerid), donatorlevel);
- }
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Você transferiu seu level de donate %i para %s. Você não é mais um usuario Donate nessa conta.", donatorlevel, accountname);
- return true;
- }
- CMD:mudarspawn(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new spawnid, bizzid = -1;
- if(sscanf(params, "iI(-1)", spawnid, bizzid)) return SysMsg(playerid,"Use: /mudarspawn [spawn id] - 1:Noob, 2:Facção HQ, 3:casa, 4:Motel, 5:Casa visitante, 6:Caravana 7:Negocio");
- if(spawnid < 1 || spawnid > 7) return SysMsg(playerid,"Use: /mudarspawn [spawn id] - 1:Noob, 2:Facção HQ, 3:Casa, 4:Motel, 5:Casa visitante, 6:Caravana, 7:Negocio");
- if(spawnid == 1)
- {
- if(MySpawnID[playerid] == 1) return SysMsg(playerid,"Você já está no spawn de noob.");
- ShowMessage(playerid, "Ponto de Spawn", "Agora você irá spawna no spawn de noob.", "Ok");
- MySpawnID[playerid] = 1;
- BizzSpawn[playerid] = 0;
- mysql_pqueryf(conn, "UPDATE players SET MySpawnID = %i, BizzSpawn = %i WHERE id = %i", MySpawnID[playerid], BizzSpawn[playerid], SQLID[playerid]);
- return true;
- }
- else if(spawnid == 2)
- {
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em nenhuma facção.");
- new locations[256], title[100];
- if(strlen(FACTIONS[Faction[playerid]][FactionSpawn1Name]) > 1)
- {
- strcat(locations, "1 - ");
- strcat(locations, FACTIONS[Faction[playerid]][FactionSpawn1Name]);
- strcat(locations, "\n");
- }
- if(strlen(FACTIONS[Faction[playerid]][FactionSpawn2Name]) > 1)
- {
- strcat(locations, "2 - ");
- strcat(locations, FACTIONS[Faction[playerid]][FactionSpawn2Name]);
- strcat(locations, "\n");
- }
- if(strlen(FACTIONS[Faction[playerid]][FactionSpawn3Name]) > 1)
- {
- strcat(locations, "3 - ");
- strcat(locations, FACTIONS[Faction[playerid]][FactionSpawn3Name]);
- strcat(locations, "\n");
- }
- if(strlen(FACTIONS[Faction[playerid]][FactionSpawn4Name]) > 1)
- {
- strcat(locations, "4 - ");
- strcat(locations, FACTIONS[Faction[playerid]][FactionSpawn4Name]);
- strcat(locations, "\n");
- }
- if(strlen(FACTIONS[Faction[playerid]][FactionSpawn5Name]) > 1)
- {
- strcat(locations, "5 - ");
- strcat(locations, FACTIONS[Faction[playerid]][FactionSpawn5Name]);
- strcat(locations, "\n");
- }
- format(title, 100, "Seleciona %s Spawn", GetFactionNameFromId(Faction[playerid]));
- Dialog_Show(playerid, FactionSubSpawn, DIALOG_STYLE_LIST, title, locations, "Selecionar", "Cancelar");
- return true;
- }
- else if(spawnid == 3)
- {
- if(HasHouseKey[playerid][0] != -1 || HasHouseKey[playerid][1] != -1)
- {
- new hid = bizzid;
- if(hid != 0 && hid != 1 && hid != -1) return SysMsg(playerid, "Número da casa inválida. Os números de casa válidos são 0 ou 1.");
- if(hid == -1)
- {
- for(new v = 0; v < MAX_HOUSE_PER_PLAYER; v++)
- {
- if(HasHouseKey[playerid][v] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", v, HouseData[HasHouseKey[playerid][v]][HouseDescription]);
- }
- }
- SysMsg(playerid, "Use: /mudarspawn 3 [Número da casa acima]");
- return true;
- }
- if(HasHouseKey[playerid][hid] == -1) return SysMsg(playerid, "Você não tem uma casa neste slot.");
- if(MySpawnID[playerid] == 3 && SpawnAtHouse[playerid] == hid) return SysMsg(playerid,"Você já está spawnando nesta casa.");
- SpawnAtHouse[playerid] = hid;
- format(gstr, sizeof(gstr),"Agora você irá spawnar na sua casa. [%s]",HouseData[HasHouseKey[playerid][SpawnAtHouse[playerid]]][HouseDescription]);
- ShowMessage(playerid, "Ponto de Spawn", gstr, "Ok");
- MySpawnID[playerid] = 3;
- mysql_pqueryf(conn, "UPDATE players SET MySpawnID = %i, SpawnAtHouse = %i WHERE id = %i", MySpawnID[playerid], hid, SQLID[playerid]);
- return true;
- }
- SysMsg(playerid,"Você não tem uma casa.");
- }
- else if(spawnid == 4)
- {
- if(RentRoom[playerid] > 0)
- {
- if(MySpawnID[playerid] == 4) return SysMsg(playerid,"Você já está spawnando em um quarto de Motel.");
- ShowMessage(playerid, "Ponto de Spawn", "Agora você irá spawnar em um quarto de Motel.", "Ok");
- MySpawnID[playerid] = 4;
- BizzSpawn[playerid] = 0;
- mysql_pqueryf(conn, "UPDATE players SET MySpawnID = %i, BizzSpawn = %i WHERE id = %i", MySpawnID[playerid], BizzSpawn[playerid], SQLID[playerid]);
- return true;
- }
- SysMsg(playerid,"Você não tem um quarto de Motel alugado.");
- }
- else if(spawnid == 5)
- {
- new ghouse = IsHouseGuest(playerid);
- if(ghouse == 0) return SysMsg(playerid,"Você não está vivendo de convidado na casa de alguém.");
- MySpawnID[playerid] = 5;
- BizzSpawn[playerid] = 0;
- mysql_pqueryf(conn, "UPDATE players SET MySpawnID = %i, BizzSpawn = %i WHERE id = %i", MySpawnID[playerid], BizzSpawn[playerid], SQLID[playerid]);
- format(gstr, sizeof(gstr),"Agora você irá spawna em %s.",HouseData[ghouse][HouseDescription]);
- ShowMessage(playerid, "Ponto de Spawn", gstr, "Ok");
- return true;
- }
- else if(spawnid == 6)
- {
- for(new x = 1, v = GetVehiclePoolSize(); x <= v; x++)
- {
- if(VehicleData[x][VehicleOwnerSQLID] == SQLID[playerid] && SQLID[playerid] > 0)
- {
- if(VehicleData[x][VehicleModel] == 508)
- {
- MySpawnID[playerid] = 6;
- BizzSpawn[playerid] = 0;
- mysql_pqueryf(conn, "UPDATE players SET MySpawnID = %i, BizzSpawn = %i WHERE id = %i", MySpawnID[playerid], BizzSpawn[playerid], SQLID[playerid]);
- ShowMessage(playerid, "Ponto de Spawn", "Agora você irá spawnar na sua Caravana.", "Ok");
- return true;
- }
- }
- }
- SysMsg(playerid,"Você não é dono de uma Caravana.");
- return true;
- }
- else if(spawnid == 7)
- {
- if(PlayerBizzID[playerid][0] == -1 && PlayerBizzID[playerid][1] == -1) return SysMsg(playerid, "Você não tem nenhum negocio para spawnar.");
- if(bizzid != 0 && bizzid != 1 && bizzid != -1) return SysMsg(playerid, "Número de negócio inválido. Os números de negócios válidos são 1 ou 2.");
- if(bizzid == -1)
- {
- for(new v = 0; v < MAX_BIZZ_PER_PLAYER; v++)
- {
- if(PlayerBizzID[playerid][v] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Business ID: %i - %s", v, BizzData[PlayerBizzID[playerid][v]][BizzDescription]);
- }
- }
- SysMsg(playerid, "Use: /mudarspawn 7 [ID do negócio acima]");
- return true;
- }
- new b = PlayerBizzID[playerid][bizzid];
- MySpawnID[playerid] = 7;
- BizzSpawn[playerid] = BizzData[b][BizzSQLID];
- mysql_pqueryf(conn, "UPDATE players SET MySpawnID = %i, BizzSpawn = %i WHERE id = %i", MySpawnID[playerid], BizzSpawn[playerid], SQLID[playerid]);
- SendClientMessageF(playerid, COLOR_BLUE, "Agora você irá spawnar em %s!", BizzData[b][BizzDescription]);
- }
- return true;
- }
- CMD:mudarspawniniciante(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /mudarspawniniciante [spawn id] - 1:Blueberry Caravans Parque, 2:Norte Caravan Parque, 3:Montgomery Caravans parque, 4:Fort Carson, 5:Angel Pine");
- new spawnid = strval(params);
- if(spawnid < 1 || spawnid > 5) return SysMsg(playerid,"ID de Spawn inválido, 1 - 5 somente.");
- if(spawnid == NoobSpawnID[playerid]) return SysMsg(playerid,"Seu spawn de iniciante já está neste local.");
- NoobSpawnID[playerid] = spawnid;
- MySQLUpdateInt(SQLID[playerid], "NoobSpawnID", NoobSpawnID[playerid], "players");
- ShowMessage(playerid, "Ponto de spawn iniciante", "Seu local de spawn iniciante foi alterado", "Ok");
- return true;
- }
- CMD:login(playerid, params[])
- {
- if(MasterAccount[playerid] == 0) return SysMsg(playerid, "Você precisa se registar antes de fazer login no servidor.");
- if(Logged{playerid}) return SysMsg(playerid, "Você já fez Login.");
- ShowLoginBox(playerid);
- return true;
- }
- CMD:logout(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(HasJustDied[playerid] == 1) return SysMsg(playerid,"Você não pode sair quando está no hospital.");
- if(IsAFK{playerid}) return SysMsg(playerid,"Você não pode sair quando se estiver AFK.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Você não pode sair quando se estiver algemado.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode sair quando se estiver empatado.");
- if(AdminJailData[playerid][0] == 1) return SysMsg(playerid,"Você não pode usar isso se estiver em Admin Jail!");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SysMsg(playerid,"Você só pode sair se estiver a pé.");
- new Float:Health;
- GetPlayerHealth(playerid, Health);
- if(Health < 30) return SysMsg(playerid, "Você não pode usar este comando quando está gravemente ferido.");
- if(SpawnCheckTimer[playerid] != 0) KillTimer(SpawnCheckTimer[playerid]);
- ClearPlayerData(playerid, 3);
- PauseAC(playerid);
- TogglePlayerSpectating(playerid, 1);
- TogglePlayerControllable(playerid, false);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerScore(playerid, 0);
- SetPlayerName(playerid, MasterAccountName[playerid]);
- SetPlayerColor(playerid, 0xBFFFBC00);
- LoginScreenID[playerid][0] = random(sizeof(ClassSelectionData));
- LoginScreenID[playerid][1] = 120;
- InterpolateCameraPos(playerid, ClassSelectionData[LoginScreenID[playerid][0]][0], ClassSelectionData[LoginScreenID[playerid][0]][1], ClassSelectionData[LoginScreenID[playerid][0]][2], ClassSelectionData[LoginScreenID[playerid][0]][6], ClassSelectionData[LoginScreenID[playerid][0]][7], ClassSelectionData[LoginScreenID[playerid][0]][8], 120000, CAMERA_MOVE);
- InterpolateCameraLookAt(playerid, ClassSelectionData[LoginScreenID[playerid][0]][3], ClassSelectionData[LoginScreenID[playerid][0]][4], ClassSelectionData[LoginScreenID[playerid][0]][5], ClassSelectionData[LoginScreenID[playerid][0]][9], ClassSelectionData[LoginScreenID[playerid][0]][10], ClassSelectionData[LoginScreenID[playerid][0]][11], 120000, CAMERA_MOVE);
- // Play login screen music
- switch(random(8))
- {
- case 0: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_gt7afvhjasdftu.mp3");
- case 1: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_5tf76yhasf6tds.mp3");
- case 2: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_gr5dqty6h3qxw6.mp3");
- case 3: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_oikicjwya8cq78.mp3");
- case 4: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_sed65tcs57gpjn.mp3");
- case 5: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_qd3w6758hjxcsa.mp3");
- case 6: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_5r4atgsdh7a56r.mp3");
- case 7: PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/login_mnb12580gdcbtu.mp3");
- }
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM masters WHERE id = %i LIMIT 1", MasterAccount[playerid]);
- mysql_pquery(conn, mquery, "LoginMasterAccount", "d", playerid);
- return true;
- }
- //Organizar ordem de comandos
- //==================== 1 Comandos de facções gerais ==========//
- //Comandos de facções gerais
- CMD:mostrarcracha(playerid, params[]) //mostrarcracha
- {
- if(!Logged{playerid}) return true;
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /mostrarcracha [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para fazer isso.");
- new hasbadge = 0;
- if(Faction[playerid] == FACTION_COP)
- {
- format(gstr, sizeof(gstr),"[SASP Distintivo] %s - %s, %s(Rank %i", NameEx(playerid), GetFactionName(playerid), GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionRank[playerid]);
- if(strlen(FactionCustomRank[playerid]) > 1)
- {
- strcat(gstr, ", Sub Rank: ");
- strcat(gstr, FactionCustomRank[playerid]);
- }
- strcat(gstr, ")");
- SendClientMessage(playa,COLOR_YELLOW,gstr);
- hasbadge = 1;
- }
- else if(Faction[playerid] == FACTION_SACFD)
- {
- format(gstr, sizeof(gstr),"[SACFD Distintivo] %s - %s, %s(Rank %i)", NameEx(playerid), GetFactionName(playerid), GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionRank[playerid]);
- if(strlen(FactionCustomRank[playerid]) > 1)
- {
- strcat(gstr, ", Sub Rank: ");
- strcat(gstr, FactionCustomRank[playerid]);
- }
- strcat(gstr, ")");
- SendClientMessage(playa,COLOR_YELLOW,gstr);
- hasbadge = 1;
- }
- else if(Faction[playerid] == FACTION_NEWS)
- {
- format(gstr, sizeof(gstr),"[News Corp. Distintivo] %s - %s, %s(Rank %i)", NameEx(playerid), GetFactionName(playerid), GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionRank[playerid]);
- if(strlen(FactionCustomRank[playerid]) > 1)
- {
- strcat(gstr, ", Sub Rank: ");
- strcat(gstr, FactionCustomRank[playerid]);
- }
- strcat(gstr, ")");
- SendClientMessage(playa,COLOR_YELLOW,gstr);
- hasbadge = 1;
- }
- else if(Faction[playerid] == FACTION_TRUCKING)
- {
- format(gstr, sizeof(gstr),"[Licença Camionista] %s - %s, %s (Rank %i)", NameEx(playerid), GetFactionName(playerid), GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionRank[playerid]);
- if(strlen(FactionCustomRank[playerid]) > 1)
- {
- strcat(gstr, ", Sub Rank: ");
- strcat(gstr, FactionCustomRank[playerid]);
- }
- strcat(gstr, ")");
- SendClientMessage(playa,COLOR_YELLOW,gstr);
- hasbadge = 1;
- }
- else if(Faction[playerid] == FACTION_PROP)
- {
- format(gstr, sizeof(gstr),"[Silver Trading Employee ID] %s - %s, %s (Rank %i)", NameEx(playerid), GetFactionName(playerid), GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionRank[playerid]);
- if(strlen(FactionCustomRank[playerid]) > 1)
- {
- strcat(gstr, ", Sub Rank: ");
- strcat(gstr, FactionCustomRank[playerid]);
- }
- strcat(gstr, ")");
- SendClientMessage(playa,COLOR_YELLOW,gstr);
- hasbadge = 1;
- }
- else if(Faction[playerid] == FACTION_RESEARCH)
- {
- if(IsPlayerMasked{playerid}) SendClientMessageF(playa,COLOR_YELLOW, "[Distintivo Federal Agent] %s - %s, %s (Rank %i)", FactionCustomRank[playerid], GetFactionName(playerid), GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionRank[playerid]);
- else SendClientMessageF(playa,COLOR_YELLOW, "[Distintivo Federal Agente] %s - %s, %s (Rank %i)", NameEx(playerid), GetFactionName(playerid), GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionRank[playerid]);
- hasbadge = 1;
- }
- if(hasbadge == 0) return SysMsg(playerid,"Sua facção não tem crachás.");
- if(playa == playerid) format(gstr, sizeof(gstr),"* %s olha para o distintivo. *", NameRP(playerid));
- else format(gstr, sizeof(gstr),"* %s mostra seu distintivo para %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:duty(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(ADuty[playerid] == 1) return SysMsg(playerid, "Você não pode entrar em serviço se estiver administrando.");
- if(isnull(params)) return SysMsg(playerid,"Use: /duty ['on' ou 'off']");
- if(strcmp("on",params,true) == 0)
- {
- if(Duty[playerid] == 1) return SysMsg(playerid,"Você já está em serviço.");
- if(Faction[playerid] == FACTION_COP)
- {
- if(IsPlayerInRangeOfPoint(playerid,2.5,-796.7911,-420.2244,1601.9928) || IsPlayerInRangeOfPoint(playerid,1.75,324.928,305.504,999.148) || IsFactionVehicle(GetPlayerVehicleID(playerid)) == FACTION_COP)
- {
- Duty[playerid] = 1;
- format(gstr, sizeof(gstr),"[Radio - 9112 MHz] Central Dispatcher: %s %s está na delegacia de polícia e agora está entrando em serviço.", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid));
- ReportCrime(gstr);
- }
- else return SysMsg(playerid,"Você só pode mudar de serviço em uma estação de polícia.");
- }
- else if(Faction[playerid] == FACTION_SACFD)
- {
- foreach(new i: Player) if(Faction[i] == FACTION_SACFD) SendClientMessageF(i, COLOR_BLUE, "SACFD Mensagem: %s agora está em serviço.",NameEx(playerid));
- Duty[playerid] = 1;
- }
- else if(Faction[playerid] == FACTION_NEWS)
- {
- foreach(new i: Player) if(Faction[i] == FACTION_NEWS) SendClientMessageF(i,COLOR_PINK,"SANews Mensagem: %s agora está em serviço.",NameEx(playerid));
- Duty[playerid] = 1;
- }
- return true;
- }
- if(strcmp("off",params,true) == 0)
- {
- if(Duty[playerid] == 0) return SysMsg(playerid, "Você já está fora do serviço.");
- if(Faction[playerid] == FACTION_COP)
- {
- if(IsPlayerInRangeOfPoint(playerid,2.5,-796.7911,-420.2244,1601.9928) || IsPlayerInRangeOfPoint(playerid,1.75,324.928,305.504,999.148) || IsFactionVehicle(GetPlayerVehicleID(playerid)) == FACTION_COP)
- {
- format(gstr, sizeof(gstr),"[Radio - 9112 MHz] Central Dispatcher: %s %s está saindo da delegacia de polícia e agora está fora de serviço.", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid));
- ReportCrime(gstr);
- Duty[playerid] = 0;
- }
- else return SysMsg(playerid,"Você só pode mudar de serviço em uma estação de polícia.");
- }
- else if(Faction[playerid] == FACTION_SACFD)
- {
- foreach(new i: Player) if(Faction[i] == FACTION_SACFD) SendClientMessageF(i, COLOR_BLUE, "SACFD Mensagem: %s está fora de serviço.",NameEx(playerid));
- Duty[playerid] = 0;
- }
- else if(Faction[playerid] == FACTION_NEWS)
- {
- foreach(new i: Player) if(Faction[i] == FACTION_NEWS) SendClientMessageF(i,COLOR_PINK,"SANews Mensagem: %s está fora de serviço.",NameEx(playerid));
- Duty[playerid] = 0;
- }
- else if(Duty[playerid] == 0) return SysMsg(playerid,"Você já está fora de serviço.");
- return true;
- }
- SysMsg(playerid,"Use: /duty ['on' ou 'off']");
- return true;
- }
- CMD:callsign(playerid, params[])//callsing
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid, "Use: /callsign [Unidade Label]");
- if(!IsCop(playerid) && Faction[playerid] != FACTION_SACFD) return SysMsg(playerid, "Você precisa ser um membro do SASP ou SACFD para usar este comando.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro de um veículo para usar esse comando.");
- if(IsFactionVehicle(GetPlayerVehicleID(playerid)) != Faction[playerid]) return SysMsg(playerid, "Você precisa estar em um veículo de facção para definir a callsign da unidade.");
- if(strlen(params) >= 10 && strlen(params) < 1) return SysMsg(playerid, "Os callsign das unidades devem ter entre 1 e 8 caracteres.");
- for(new fiv = 0, x = GetVehiclePoolSize(); fiv <= x; fiv++)
- {
- if(strmatch(FVehicleData[fiv][FVGovUnit], params)) return SendClientMessage(playerid, COLOR_GREY, "Esta callsign de unidade já está em uso, use outro.");
- }
- new vehid = GetPlayerVehicleID(playerid);
- format(FVehicleData[vehid][FVGovUnit], 12, params);
- for(new l = 0; l < 10; l++) FVehicleData[vehid][FVGovUnit][l] = toupper(FVehicleData[vehid][FVGovUnit][l]);
- if(FVehicleData[vehid][FVGovUnitTog])
- {
- UpdateDynamic3DTextLabelText(FVehicleData[vehid][FVGovUnit3DText], COLOR_SIGN, FVehicleData[vehid][FVGovUnit]);
- }
- else
- {
- new Float:sX, Float:sY, Float:sZ;
- GetVehicleModelInfo(GetVehicleModel(FVehicleData[vehid][FactionVehID]), VEHICLE_MODEL_INFO_SIZE, sX, sY, sZ);
- FVehicleData[vehid][FVGovUnit3DText] = CreateDynamic3DTextLabel(FVehicleData[vehid][FVGovUnit], COLOR_SIGN, 0.0, (-sY + 1.6) / 2.0, -0.2, 25.0, INVALID_PLAYER_ID, vehid, 1, -1, -1, -1, 25);
- FVehicleData[vehid][FVGovUnitTog] = 1;
- }
- Streamer_Update(playerid);
- SendClientMessageF(playerid, COLOR_BLUE, "Você editou com sucesso o callsign da unidade para o veiculo %s, use /togcallsign para ativá-lo.", GetVehicleNameEx(GetVehicleModel(vehid)));
- return true;
- }
- CMD:togcallsign(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid) && Faction[playerid] != FACTION_SACFD) return SysMsg(playerid, "Você precisa ser um membro do SASP ou SACFD para usar esse comando.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro de um veículo para usar esse comando.");
- if(IsFactionVehicle(GetPlayerVehicleID(playerid)) != Faction[playerid]) return SysMsg(playerid, "Você precisa estar em um veículo de facção para definir o rótulo de unidade.");
- new vehid = GetPlayerVehicleID(playerid);
- if(FVehicleData[vehid][FVGovUnitTog] == 1)
- {
- DestroyDynamic3DTextLabel(FVehicleData[vehid][FVGovUnit3DText]);
- FVehicleData[vehid][FVGovUnit3DText] = Text3D:INVALID_3DTEXT_ID;
- SendClientMessage(playerid, COLOR_BLUE, "Você removeu com sucesso a callsign da unidade.");
- FVehicleData[vehid][FVGovUnitTog] = 0;
- }
- else
- {
- new Float:sX, Float:sY, Float:sZ;
- GetVehicleModelInfo(GetVehicleModel(FVehicleData[vehid][FactionVehID]), VEHICLE_MODEL_INFO_SIZE, sX, sY, sZ);
- FVehicleData[vehid][FVGovUnit3DText] = CreateDynamic3DTextLabel(FVehicleData[vehid][FVGovUnit], COLOR_SIGN, 0.0, (-sY + 1.6) / 2.0, -0.2, 25.0, INVALID_PLAYER_ID, vehid, 1, -1, -1, -1, 25);
- SendClientMessageF(playerid, COLOR_BLUE, "Você adicionou com sucesso uma callsign a unidade", GetVehicleNameEx(GetVehicleModel(vehid)));
- Streamer_Update(playerid);
- FVehicleData[vehid][FVGovUnitTog] = 1;
- }
- return true;
- }
- CMD:fanuncio(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(FactionRank[playerid] < 3) return SysMsg(playerid,"Você não tem o Rank suficiente.");
- if(FadvertSpamTime > 0) return SysMsg(playerid, "Outro fanuncio não pode ser feito no momento.");
- if(!AdvertsToggle{playerid}) return SysMsg(playerid, "Você não pode fazer um anúncio como você tem anúncios desativados.");
- if(isnull(params))
- {
- SysMsg(playerid,"Use: /fanuncio [mensagem]");
- SysMsg(playerid,"Exemplo: '/fanuncio Isto é um teste' irá mostrar como: [Anúncio da Facção] Isto é um teste [Seu Nome_Sobrenome]");
- return true;
- }
- new AdCost = strlen(params) * 8;
- if(IsDonator[playerid] < 3)
- {
- GivePlayerCash(playerid, -AdCost);
- format(gstr, sizeof(gstr),"Você fez uma anúncio na facção com %i characters, isso irá custa $%i. ($8/Letras)",strlen(params),AdCost);
- }
- else if(IsDonator[playerid] == 3)
- {
- AdCost = AdCost / 2;
- GivePlayerCash(playerid, -AdCost);
- format(gstr, sizeof(gstr),"Você fez uma anúncio na facção com %i characters, isso irá custa $%i. ($8/Letras)",strlen(params),AdCost);
- }
- else if(IsDonator[playerid] >= 4)
- {
- format(gstr, sizeof(gstr),"Você fez um anúncio de facção %i characters, não custando nada.",strlen(params),AdCost);
- }
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- FadvertSpamTime = 60;
- foreach(new i: Player) if(Logged{i} && AdvertsToggle{i}) SendSplitMessageF(i, COLOR_GREEN, "[Faction Advert] %s [%s]", params, GetFactionName(playerid));
- format(gstr, sizeof(gstr), "[Admin] ^^ Anúncio de facção por %s (ID %i)", NameEx(playerid), playerid);
- AdminBroadcast(gstr, 0);
- AddToLog("advert", gstr);
- return true;
- }
- CMD:membros(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid, "Faça o login primeiro.");
- new faction;
- if(sscanf(params, "i", faction))
- {
- if(Faction[playerid] == 0) return SysMsg(playerid, "Você não esta uma facção.");
- MemberBrowsing[playerid] = Faction[playerid];
- MemberListIndex[playerid] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "SELECT Online,Name,FactionRank,FactionCustomRank FROM players WHERE Faction = %i ORDER BY FactionRank DESC LIMIT 20 OFFSET %i", Faction[playerid], MemberListIndex[playerid] * 20);
- mysql_pquery(conn, mquery, "DisplayFactionMemberList", "dd", playerid, MemberListIndex[playerid]);
- return true;
- }
- if(!IsPlayerAdminLevelOK(playerid, 2)) return SysMsg(playerid, AUTHMSG);
- if(faction == 0) return SysMsg(playerid, "Facção não pode ser 0. Por favor, veja /FIDS para uma facção válida.");
- MemberBrowsing[playerid] = faction;
- MemberListIndex[playerid] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "SELECT Online,Name,FactionRank,FactionCustomRank FROM players WHERE Faction = %i ORDER BY FactionRank DESC LIMIT 20 OFFSET %i", faction, MemberListIndex[playerid] * 20);
- mysql_pquery(conn, mquery, "DisplayFactionMemberList", "dd", playerid, MemberListIndex[playerid]);
- return true;
- }
- CMD:faconline(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- mysql_pquery(conn, "SELECT COUNT(id) AS members, Faction FROM players WHERE Faction != 0 GROUP BY Faction", "LoadFactionOnline", "i", playerid);
- return true;
- }
- GREENSIDE::LoadFactionOnline(playerid)
- {
- new members[MAX_FACTIONS];
- for(new i = 0, r = cache_num_rows(); i < r; i++)
- {
- members[cache_get_field_content_int(i, "Faction")] = cache_get_field_content_int(i, "members");
- }
- gstr[0] = EOS;
- new membercount = 0;
- for(new i = 1; i < MAX_FACTIONS; i++)
- {
- if(IsFactionActive(i) == 1)
- {
- foreach(new p: Player)
- {
- if(Logged{p} && Faction[p] == i)
- {
- membercount ++;
- }
- }
- format(sgstr, sizeof(sgstr), "[{00B837}%i{FFFFFF}/{00B837}%i{FFFFFF}] %s\n", membercount, members[i], FACTIONS[i][FactionName]);
- strcat(gstr, sgstr);
- membercount = 0;
- }
- }
- Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_LIST, "Lista de facções", gstr, "Fechar!", "");
- return true;
- }
- CMD:sairfaccao(playerid, params[])//sairfaccao
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não tem Faction para sair.");
- if(QuitFromFaction[playerid] != 0) return SysMsg(playerid,"Você já está desistindo, use '/accept quitfaction'.");
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Saia deste veículo primeiro.");
- QuitFromFaction[playerid] = Faction[playerid];
- if(strlen(FactionCustomRank[playerid]) >= 1) FactionCustomRank[playerid][0] = 0;
- SendClientMessageF(playerid,COLOR_WHITE, "Você tem certeza de que quer sair: %s. Escreva '/accept quitfaction' para confirmar.", GetFactionName(playerid));
- return true;
- }
- CMD:ranks(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == 0) return SysMsg(playerid, "Você deve estar em uma facção para usar esse comando.");
- new f = Faction[playerid], col[12];
- SendClientMessageF(playerid, COLOR_WHITE, "Facção rank de {096483}%s", FACTIONS[f][FactionName]);
- for(new x = FACTIONS[f][FactionUberLeaderRank] - 1; x != -1; x--)
- {
- if(strlen(FactionRanks[f][x]))
- {
- if(x + 1 == FACTIONS[f][FactionUberLeaderRank]) col = "328332";
- else if(x + 1 == FACTIONS[f][FactionLeaderRank]) col = "4C924C";
- else col = "FFFFFF";
- SendClientMessageF(playerid, COLOR_WHITE, "{%s} Rank %i: %s", col, x + 1, FactionRanks[f][x]);
- }
- }
- return true;
- }
- CMD:removesubrank(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um rank alto suficiente para fazer isso.");
- new pname[32], playa;
- if(sscanf(params, "s[32]", pname)) return SysMsg(playerid,"Use: /removesubrank [ID / Nome_Sobrenome]");
- playa = GetPlayerIDs(pname);
- if(!InvalidPlayer(playa))
- {
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(Faction[playerid] != Faction[playa]) return SysMsg(playerid,"Esta pessoa não está na mesma facção que você.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET FactionCustomRank = '' WHERE id = %i", SQLID[playa]);
- mysql_pquery(conn, mquery);
- FactionCustomRank[playa][0] = EOS;
- SendClientMessageF(playerid,COLOR_ORANGE, "Você removeu o sub-rank de %s.", NameEx(playa));
- SendClientMessageF(playa,COLOR_ORANGE, "%s removeu seu sub-rank.", NameEx(playerid));
- IsESU{playa} = false;
- return true;
- }
- else if(strfind(pname, "_", true) != -1)
- {
- new sqlid = MySQLCheckAccount(pname, playerid);
- if(sqlid == 0) return SysMsg(playerid, "Nome não encontrado na base de dados, por favor, tente novamente");
- if(sqlid == SQLID[playerid]) return SysMsg(playerid, "Name cannot be your account.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET FactionCustomRank = '' WHERE id = %i", sqlid);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid,COLOR_ORANGE, "Você removeu o sub-rank de %s.", RPName(pname));
- return true;
- }
- return true;
- }
- CMD:skin(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(IsJailed[playerid] == 1) return SysMsg(playerid,"Aguarde até sair da prisão.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser executada enquanto você estiver em algemas.");
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Saia do veiculo primeiro.");
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DUCK) return SysMsg(playerid,"Por favor, agite-se antes de mudar a skin.");
- new MaxNumber = GetFactionMaxSkins(Faction[playerid]);
- new f = Faction[playerid];
- if(isnull(params)) return SysMsgF(playerid,"Use: /skin [número] Por %s existem %i Skins, Use os números 1 para %i.",GetFactionName(playerid), MaxNumber, MaxNumber);
- if(!IsNumeric(params)) return SysMsg(playerid,"O número da pele deve ser um número.");
- new slot = strval(params);
- if(slot < 1 || slot > MaxNumber) return SysMsg(playerid,"Número inválido");
- new allowChange = 0;
- switch(Faction[playerid])
- {
- case FACTION_COP: if(IsPlayerInRangeOfPoint(playerid, 2.0,-786.8459,-401.8096,1802.0253) || IsPlayerInRangeOfPoint(playerid,2.0,324.203002, 309.210266, 999.14840)) allowChange = 1;
- case FACTION_SACFD:
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, 2385.5320,230.0867,2004.1659) || IsPlayerInRangeOfPoint(playerid, 2.0,2385.8569,224.3492,2004.1659)) allowChange = 1;
- new Float:vPos[3];
- GetVehiclePos(GetNearestVehicle(playerid), vPos[0], vPos[1], vPos[2]);
- if(IsPlayerInRangeOfPoint(playerid, 4.0, vPos[0], vPos[1], vPos[2]) && IsFactionVehicle(GetNearestVehicle(playerid)) == FACTION_SACFD) allowChange = 1;
- }
- default: allowChange = 1;
- }
- if(allowChange == 0) return SysMsg(playerid, "Você precisa estar na área de troca de skins.");
- SetPlayerSkinEx(playerid, FACTIONS[f][FactionSkins][slot - 1]);
- Clothes[playerid][4] = FACTIONS[f][FactionSkins][slot - 1];
- cPlayersSkin[playerid] = FACTIONS[f][FactionSkins][slot - 1];
- MySQLUpdateInt(SQLID[playerid], "SkinSet5", Clothes[playerid][4], "players");
- MySQLUpdateInt(SQLID[playerid], "Skin", cPlayersSkin[playerid], "players");
- return true;
- }
- CMD:gunrack(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar em um veículo para usar este comando.");
- new faction = IsFactionVehicle(GetPlayerVehicleID(playerid)), veh = GetPlayerVehicleID(playerid), option[8], weap[24];
- if((Faction[playerid] == FACTION_COP || Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_PROP) && faction == Faction[playerid])
- {
- if(FVehicleData[veh][FactionVehID] != GetPlayerVehicleID(playerid)) return true;
- if(sscanf(params, "s[8]S()[24]", option, weap)) return SysMsg(playerid, "Use: /gunrack [pegar/guardar/mostrar] [Gunrack Slot] [nome da arma]");
- if(strcmp(option, "pegar", true) == 0 || strcmp(option, "get", true) == 0)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM weapons WHERE Gunrack != -1 AND FCarID = %i AND WeaponID = %i AND Deleted = 0 AND WeaponPossession = 0 AND TrunkID = -1 AND HouseID = -1 AND Dropped = 0", FVehicleData[veh][FVSQLID], GetWeaponIdFromName(weap));
- mysql_pquery(conn, mquery, "ProcessGunrackTake", "ii", playerid, veh);
- return true;
- }
- else if(strcmp(option, "guardar", true) == 0 || strcmp(option, "place", true) == 0)
- {
- if(!strlen(weap)) return SysMsg(playerid, "Use: /gunrack guardar [Gunrack Slot] [Nome da arma]");
- new wep = GetWeaponIdFromName(weap);
- if(wep == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(wep < 1 || wep > 47) return SysMsg(playerid,"Arma inválida.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM weapons WHERE FCarID = %i AND Gunrack = 1 AND Deleted = 0 AND Dropped = 0", FVehicleData[veh][FVSQLID]);
- mysql_pquery(conn, mquery, "ProcessGunrackStore", "iii", playerid, veh, wep);
- return true;
- }
- else if(strcmp(option, "mostrar", true) == 0 || strcmp(option, "view", true) == 0)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT WeaponID, WeaponAmmo FROM weapons WHERE FCarID = %i AND Gunrack != -1 AND Deleted = 0 AND Dropped = 0", FVehicleData[veh][FVSQLID]);
- mysql_pquery(conn, mquery, "ProcessGunrackView", "i", playerid);
- return true;
- }
- else cmd_gunrack(playerid, "");
- }
- else SysMsg(playerid, "Você precisa ser um membro do SASP para usar esse comando.");
- return true;
- }
- GREENSIDE::ProcessGunrackTake(playerid, veh)
- {
- if(!cache_num_rows()) return SysMsg(playerid, "Você não tem uma arma armazenada no gunrack.");
- new wep = cache_get_field_content_int(0, "WeaponID");
- new slot = GetWeaponSlot(wep);
- if(WeaponData[playerid][slot][Weapon] != 0) return SysMsg(playerid, "Você já está segurando uma arma nesse slot.");
- if(GetFreeWeaponObjectIndex(playerid) == -1) return SysMsg(playerid, "Você não pode carregar mais armas no momento.");
- WeaponData[playerid][slot][WeaponID] = cache_get_field_content_int(0, "id");
- WeaponData[playerid][slot][WeaponTimestamp] = cache_get_field_content_int(0, "Timestamp");
- WeaponData[playerid][slot][wCreatorSQLID] = cache_get_field_content_int(0, "CreatorSQLID");
- WeaponData[playerid][slot][Weapon] = wep;
- WeaponData[playerid][slot][wOwnerSQLID] = cache_get_field_content_int(0, "OwnerSQLID");
- WeaponData[playerid][slot][WeaponAmmo] = cache_get_field_content_int(0, "WeaponAmmo");
- WeaponData[playerid][slot][WeaponType] = GetWeaponType(WeaponData[playerid][slot][Weapon]);
- WeaponData[playerid][slot][WeaponOrigin] = cache_get_field_content_int(0, "WeaponOrigin");
- WeaponData[playerid][slot][WeaponPossession] = cache_get_field_content_int(0, "WeaponPossession");
- SyncPlayerWeapons(playerid);
- SetPlayerArmedWeapon(playerid, WeaponData[playerid][slot][Weapon]);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET FCarID = -1, Gunrack = -1, WeaponPossession = 1, OwnerSQLID = %i WHERE id = %i", SQLID[playerid], WeaponData[playerid][slot][WeaponID]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_DARKBLUE, "Você pegou um(a) %s do gunrack deste(a) %s.",GetWeaponNameFromID(WeaponData[playerid][slot][Weapon]), GetVehicleNameEx(FVehicleData[veh][FVModel]));
- format(sgstr, sizeof(sgstr),"* %s pegou alguma coisa do porta-arma do %s. *",NameRP(playerid), GetVehicleNameEx(FVehicleData[veh][FVModel]));
- SetPlayerChatBubble(playerid, sgstr, COLOR_EMOTE, 15.0, 5000);
- return true;
- }
- GREENSIDE::ProcessGunrackStore(playerid, veh, weapid)
- {
- if(cache_num_rows() == 2) return SysMsg(playerid, "Esse gunrack está cheio.");
- new slot = GetWeaponSlot(weapid);
- if(WeaponData[playerid][slot][Weapon] != weapid) return SysMsg(playerid, "Você não tem essa arma para guardá-la.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET FCarID = %i, Gunrack = 1, WeaponPossession = 0, WeaponAmmo = %i WHERE id = %i", FVehicleData[veh][FVSQLID], WeaponData[playerid][slot][WeaponAmmo], WeaponData[playerid][slot][WeaponID]);
- mysql_pquery(conn, mquery);
- ResetWeaponVariables(playerid, 0, slot);
- SyncPlayerWeapons(playerid);
- SendClientMessageF(playerid, COLOR_DARKBLUE, "Você guardou uma %s no gunrack desse(a) %s.",GetWeaponNameFromID(weapid), GetVehicleNameEx(FVehicleData[veh][FVModel]));
- format(gstr, sizeof(gstr), "* %s guarda alguma coisa no gunrack do(a) %s. *", NameRP(playerid), GetVehicleNameEx(FVehicleData[veh][FVModel]));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 5000);
- return true;
- }
- GREENSIDE::ProcessGunrackView(playerid)
- {
- if(!cache_num_rows()) return SysMsg(playerid, "Esse gunrack está vazio.");
- new wep, ammo;
- for(new i = 0, x = cache_num_rows(); i < x; i++)
- {
- wep = cache_get_field_content_int(i, "WeaponID");
- ammo = cache_get_field_content_int(i, "WeaponAmmo");
- SendClientMessageF(playerid, COLOR_DARKBLUE, "[Gun Rack Slot %i] Arma: %s [Munições: %i]", i + 1, GetWeaponNameFromID(wep), ammo);
- }
- return true;
- }
- CMD:m(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- new CarId = GetNearestVehicle(playerid), faction = IsFactionVehicle(CarId);
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- if(isnull(params)) return SysMsg(playerid,"Use: MEGAPHONE: /m [mensagem]");
- if(CarId == 0 || faction == 0 || Faction[playerid] != faction) return SysMsg(playerid,"Você deve estar dentro ou perto de um veículo de facção adequado.");
- new Float:vpos[3];
- GetVehiclePos(CarId, vpos[0], vpos[1], vpos[2]);
- if(!IsPlayerInVehicle(playerid, CarId) && !IsPlayerInRangeOfPoint(playerid, 4.0, vpos[0], vpos[1], vpos[2])) return SysMsg(playerid, "Você deve estar dentro ou perto de um veículo de facção adequado.");
- if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 510) return SysMsg(playerid,"Você deve estar dentro ou perto de um veículo de facção adequado.");
- format(gstr, sizeof(gstr),"[%s] o< %s",NameRP(playerid),params);
- ProxDetector(100.0,playerid,gstr,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 60, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- foreach(new i: Player)
- {
- if(IsInHouseID[i] == h)
- {
- SendClientMessageF(i,COLOR_YELLOW,"[%s, lado de fora] o< %s",NameRP(playerid),params);
- }
- }
- }
- }
- for(new h = 0; h < MAX_BIZZ; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 60, BizzData[h][oPosX], BizzData[h][oPosY], BizzData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == 0)
- {
- foreach(new i: Player)
- {
- if(IsInBizzID[i] == h)
- {
- SendClientMessageF(i,COLOR_YELLOW,"[%s, lado de fora] o< %s",NameRP(playerid),params);
- }
- }
- }
- }
- for(new h = 0; h < MAX_GARAGES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 60, GarageData[h][oPosX], GarageData[h][oPosY], GarageData[h][oPosZ]))
- {
- foreach(new i: Player)
- {
- if(IsInGarageID[i] == h)
- {
- SendClientMessageF(i,COLOR_YELLOW,"[%s, lado de fora] o< %s",NameRP(playerid),params);
- }
- }
- }
- }
- }
- else return SysMsg(playerid,"Você não pode usar isso.");
- return true;
- }
- CMD:f(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(FACTIONS[Faction[playerid]][FactionChatToggleOff] == 1) return SysMsg(playerid,"O bate-papo de Faction está desativado para sua facção.");
- if(ptogf{playerid}) return SysMsg(playerid,"Você tem conversa de facção desativada.");
- if(isnull(params)) return SysMsg(playerid,"Use: Faction Chat: /f [mensagem]");
- if(strlen(FactionCustomRank[playerid]) != 0) format(gstr, sizeof(gstr),"[%s(%s) %s] %s", GetFactionRankName(Faction[playerid], FactionRank[playerid]), FactionCustomRank[playerid], NameEx(playerid), params);
- else format(gstr, sizeof(gstr),"[%s %s] %s", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), params);
- foreach(new i: Player) if(Logged{i} && Faction[i] == Faction[playerid] && !ptogf{i}) SendSplitMessage(i, 0x80BCFFFF, gstr);
- return true;
- }
- CMD:togf(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!ptogf{playerid})
- {
- ptogf{playerid} = true;
- SysMsg(playerid,"Você desabilitou o bate-papo da facção.");
- }
- else
- {
- ptogf{playerid} = false;
- SysMsg(playerid,"Você habilitou o bate-papo por facção.");
- }
- return true;
- }
- CMD:fo(playerid, params[]) return cmd_fhc(playerid, params);
- CMD:fhc(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um rank alto suficiente para fazer isso.");
- if(isnull(params)) return SysMsg(playerid,"Use: Faction Chat: /fhc [mensagem]");
- foreach(new i: Player) if(Logged{i} && Faction[i] == Faction[playerid] && IsValidLeaderRank(Faction[i], FactionRank[i])) SendSplitMessageF(i, 0x459CFFFF, "[Faction HC(%s) %s] %s", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), params);
- return true;
- }
- CMD:fan(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(ptogf{playerid}) return SysMsg(playerid,"Você tem conversa de facção desativada.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um rank alto suficiente para fazer isso.");
- if(isnull(params)) return SysMsg(playerid,"Use: Faction Chat: /fan [mensagem]");
- foreach(new i: Player) if(Logged{i} && Faction[i] == Faction[playerid]) SendSplitMessageF(i, 0x459CFFFF, "[Faction announcement(%s) %s] %s", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), params);
- return true;
- }
- CMD:d(playerid) return SysMsg(playerid, "/d foi renomeado para /dr. Use isso de agora em diante.");
- CMD:dr(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- if(Duty[playerid] == 0 && Faction[playerid] != FACTION_RESEARCH) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(isnull(params)) return SysMsg(playerid,"Use: Department Chat: /dr [mensagem]");
- new DeptName[10];
- if(Faction[playerid] == FACTION_COP) DeptName = "SASP";
- else if(Faction[playerid] == FACTION_SACFD) DeptName = "SACFD";
- else if(Faction[playerid] == FACTION_RESEARCH) DeptName = "Agency";
- foreach(new i: Player)
- {
- if(!Logged{i} || playerid == i)
- {
- continue;
- }
- if(Faction[i] == FACTION_RESEARCH)
- {
- SendSplitMessageF(i, COLOR_ORANGE, "[%s] %s %s diz: %s", DeptName, GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameRP(playerid), params);
- continue;
- }
- if(Duty[i] == 1 && (IsCop(i) || Faction[i] == FACTION_SACFD))
- {
- SendSplitMessageF(i, COLOR_ORANGE, "[%s] %s %s diz: %s", DeptName, GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameRP(playerid), params);
- continue;
- }
- }
- format(gstr, sizeof(gstr), "%s diz (dept. radio): %s", NameRP(playerid), params);
- ProxDetector(15.0, playerid, gstr, COLOR_FADE1, COLOR_FADE2, COLOR_FADE3, COLOR_FADE4, COLOR_FADE5);
- }
- else SysMsg(playerid, "Você não está na facção correta para usar isso.");
- return true;
- }
- CMD:fcars(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == 0) return SysMsg(playerid, "Você deve estar em uma facção.");
- new textBody[3500];
- new Vcount = 0;
- strcat(textBody, "Nome do veículo\tVeículo ID\tClassificação exigida\n");
- for(new v = 0, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(IsVehicleSpawned(FVehicleData[v][FactionVehID]) && Faction[playerid] == FVehicleData[v][FVFaction])
- {
- Vcount ++;
- format(sgstr, sizeof(sgstr), "%s\t%i\t%i\n", GetVehicleNameEx(FVehicleData[v][FVModel]), FVehicleData[v][FactionVehID], FVehicleData[v][FVMinRank]);
- strcat(textBody, sgstr);
- }
- }
- if(Vcount > 0)
- {
- format(tgstr, sizeof(tgstr), "%s - %i Veículos", FACTIONS[Faction[playerid]][FactionName], Vcount);
- Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_TABLIST_HEADERS, tgstr, textBody, "Pronto", "");
- }
- else SysMsg(playerid, "Nenhum veículo de Faction encontrado para sua Faction.");
- return true;
- }
- CMD:ultimodirigido(playerid, params[])//ultimodirigido
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado para usar esta ferramenta.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- new Car = GetPlayerVehicleID(playerid);
- if(Car == 0 || IsInFactionCar[playerid] == 0) return SysMsg(playerid,"Você não está em um veiculo de facção.");
- new h, m, temp, fv = IsInFactionCar[playerid];
- if(FVehicleData[fv][FactionVehID] == Car)
- {
- if(FVehicleData[fv][LastDriver] == 0) return SysMsg(playerid,"Este veículo ainda não foi conduzido.");
- temp = gettime() - FVehicleData[fv][LastDriverTime];
- while(temp > 3600)
- {
- temp -= 3600;
- h++;
- }
- while(temp > 60)
- {
- temp -= 60;
- m++;
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Esse %s foi conduzido pela última vez %s %i horas %i minutos %i segundos.", GetVehicleName(Car), GetSQLName(FVehicleData[fv][LastDriver]), h, m, temp);
- }
- return true;
- }
- CMD:addsiren(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você deve estar em um veículo para usar este comando.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid, "Você não tem um rank apropriado para usar este comando.");
- new vehicleid = GetPlayerVehicleID(playerid);
- if(IsFactionVehicle(vehicleid) != Faction[playerid]) return SysMsg(playerid, "Você precisa estar em um veiculo de facção.");
- if(IsPushBike(vehicleid)) return SysMsg(playerid, "Não é possivel adicionar sirene neste veiculo.");
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, FVehicleData[vehicleid][LocationX], FVehicleData[vehicleid][LocationY], FVehicleData[vehicleid][LocationZ])) return SysMsg(playerid, "Você deve estar perto do ponto de spawn do veículo.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT HasSiren FROM fveh WHERE id = %i", FVehicleData[vehicleid][FVSQLID]);
- mysql_pquery(conn, mquery, "AssignFVehSiren", "dd", playerid, vehicleid);
- return true;
- }
- else SysMsg(playerid, "Você deve estar em uma facção do governo para usar esse comando.");
- return true;
- }
- CMD:buscartelefone(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || IsPlayerAdmin(playerid) || Faction[playerid] == FACTION_RESEARCH)
- {
- new pnumber, zone[MAX_ZONE_NAME];
- if(sscanf(params, "i", pnumber)) return SysMsg(playerid,"Use: /buscartelefone [número telefonico] *Dará um nome de área com base em seu número de telefone*");
- if(pnumber < 100000 || pnumber > 9999999) return SysMsg(playerid,"Número de telefone inválido.");
- if(!HasPhoneSignal(playerid)) return SysMsg(playerid, "Nenhum sinal de satélite encontrado. [E001]");
- foreach(new i: Player)
- {
- if(Logged{i} && PhoneData[i][pNumber] == pnumber)
- {
- if(PhoneData[i][pPower] == 0) return SysMsg(playerid,"Nenhum sinal de satélite encontrado. [E002]");
- if(!HasPhoneSignal(i)) return SysMsg(playerid, "Nenhum sinal de satélite encontrado. [E003]");
- if(IsInHouseID[i] != -1) Get2DZone(HouseData[IsInHouseID[i]][oPosX], HouseData[IsInHouseID[i]][oPosY], zone, MAX_ZONE_NAME);
- else if(IsInBizzID[i] != -1) Get2DZone(BizzData[IsInBizzID[i]][oPosX], BizzData[IsInBizzID[i]][oPosY], zone, MAX_ZONE_NAME);
- else if(IsInGarageID[i] != -1) Get2DZone(GarageData[IsInGarageID[i]][oPosX], GarageData[IsInGarageID[i]][oPosY], zone, MAX_ZONE_NAME);
- else GetPlayer2DZone(i, zone, MAX_ZONE_NAME);
- if(Faction[playerid] == FACTION_RESEARCH) SendClientMessageF(playerid, COLOR_WHITE, "O numero do telefone %i foi localizado dentro de %s. (%s de você)", pnumber, zone, GetNSEWBetweenPlayers(playerid, i));
- else SendClientMessageF(playerid, COLOR_WHITE, "O numero do telefone %i foi localizado dentro de %s.", pnumber, zone);
- return true;
- }
- }
- for(new i = 0; i < MAX_GUNS; i++)
- {
- if(WeaponDrop[i][Type] == 6)
- {
- if(WeaponDrop[i][DropPhonePower] == 1)
- {
- if(WeaponDrop[i][DropPhoneNumber] == pnumber)
- {
- Get2DZone(WeaponDrop[i][wX], WeaponDrop[i][wY], zone, MAX_ZONE_NAME);
- SendClientMessageF(playerid, COLOR_WHITE, "O numero do telefone %i foi localizado dentro de %s.", pnumber, zone);
- return true;
- }
- }
- }
- }
- SysMsg(playerid,"Nenhum sinal de satélite encontrado. [E004]");
- }
- else SysMsg(playerid,"Você precisa ser um membro do SASP ou Aperture.");
- return true;
- }
- CMD:equipar(playerid)//equipar
- {
- if(!Logged{playerid}) return true;
- gstr[0] = EOS;
- if(IsCop(playerid) && (IsPlayerInRangeOfPoint(playerid,3.5,651.307861, -570.924926, 1004.765808) || IsPlayerInRangeOfPoint(playerid,3.5,327.232574, 307.493316, 999.148437) || IsPlayerInRangeOfPoint(playerid,2.0,1234.5601,767.7869,1010.8853) || IsPlayerInRangeOfPoint(playerid, 2.0, -330.4111,1793.7444,999.3145)))
- {
- if(HasTaser{playerid}) return SysMsg(playerid, "Você não pode usar este comando se estiver com um Taser equipado.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid, "Você precisa ser rank 2 para isso.");
- gstr[0] = EOS;
- strcat(gstr, "Oficial de patrulha\nDetective");
- if(FactionRank[playerid] > 3) strcat(gstr, "\nShotgun\nMP5");
- if(FactionRank[playerid] > 6) strcat(gstr, "\nM4\nSPAS-12\nSniper");
- if(strfind(FactionCustomRank[playerid], "SID") != -1 || IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) strcat(gstr, "\nGPS montável");
- strcat(gstr, "\nDesarmar");
- Dialog_Show(playerid, PoliceEquip, DIALOG_STYLE_LIST, "Police Cache de equipamento", gstr, "Selecionar", "Sair");
- return true;
- }
- else if(Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_COP)
- {
- new vid = GetPlayerVehicleID(playerid), closest;
- if(vid == 0) closest = GetClosestVehicle(playerid);
- new Float:vpos[3];
- GetVehiclePos(closest, vpos[0], vpos[1], vpos[2]);
- new isESUVeh = 0;
- switch(GetVehicleModel(closest))
- {
- case 427, 528, 433, 544, 407: isESUVeh = 1;
- }
- if(IsFactionVehicle(closest) == FACTION_SACFD || (IsFactionVehicle(vid) == FACTION_COP && IsESU{playerid} && isESUVeh) || (IsFactionVehicle(closest) == FACTION_COP && IsESU{playerid} && IsPlayerInRangeOfPoint(playerid, 7.0, vpos[0], vpos[1], vpos[2]) && isESUVeh))
- {
- format(gstr, sizeof(gstr), "Extintor de incêndio\nPole\nMachado de Fogo\nPá\nCamera\n");
- if(FactionRank[playerid] > 4) strcat(gstr, "\nMotosserra");
- strcat(gstr, "\nDesarmar");
- Dialog_Show(playerid, FireEquip, DIALOG_STYLE_LIST, "Cache de equipamento", gstr, "Selecionar", "Sair");
- return true;
- }
- }
- else if(Faction[playerid] == FACTION_NEWS)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, 1221.7062, 229.4432, 1019.5291) || IsFactionVehicle(GetNearestVehicle(playerid)) == Faction[playerid])
- {
- new wep, ammo;
- GetPlayerWeaponData(playerid, GetWeaponSlot(43), wep, ammo);
- if(wep != 0) return SysMsg(playerid, "Você já tem uma camera.");
- GivePlayerWeaponEx(playerid,43,1000, 3); //Camera
- SendClientMessage(playerid, COLOR_BLUE, "Camera recebida.");
- return true;
- }
- }
- else SysMsg(playerid, "Eu acho que não amigo.");
- return true;
- }
- CMD:ammobox(playerid)
- {
- if(Faction[playerid] != FACTION_RESEARCH) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 2.5, 248.341934, 1859.595825, 14.084012)) return true;
- Inventory[playerid][AmmoBox][AMMOBOX_PISTOL] = 10;
- Inventory[playerid][AmmoBox][AMMOBOX_SMG] = 10;
- Inventory[playerid][AmmoBox][AMMOBOX_SHOTGUN] = 10;
- Inventory[playerid][AmmoBox][AMMOBOX_RIFLE] = 10;
- Inventory[playerid][AmmoBox][AMMOBOX_ASSAULT] = 10;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET AmmoBoxPistol = 10, AmmoBoxSMG = 10, AmmoBoxShotgun = 10, AmmoBoxRifle = 10, AmmoBoxAssaultR = 10 WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- return true;
- }
- CMD:armas(playerid)//armas
- {
- if(!Logged{playerid}) return true;
- gstr[0] = EOS;
- if(Faction[playerid] == FACTION_RESEARCH)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.5, 248.341934, 1859.595825, 14.084012) || IsPlayerInRangeOfPoint(playerid, 2.5, 250.1942,1898.0831,1100.2180))
- {
- format(sgstr, sizeof(sgstr), "GPS montável\nCamera\nLata de spray\nCassetete\nFaca\nKatana\n9mm\nPistola silenciada\nDesert Eagle\nShotgun\nSPAS-12\nUzi\nTec9\nMP5\nAK-47\nM4\nCountry Rifle\nSniper Rifle\nPára-quedas\nGás lacrimogêneo\nDesarmar");
- Dialog_Show(playerid, APWeapons, DIALOG_STYLE_LIST, "Cache de armas de abertura", sgstr, "Selecionar", "Sair");
- return true;
- }
- }
- else SysMsg(playerid, "Eu acho que não amigo.");
- return true;
- }
- CMD:health(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Cash[playerid] < 100) return SysMsg(playerid, "Você precisa de $100 para isso.");//saude
- if(IsCop(playerid))
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, 653.7676, -570.6655, 1004.7658) || IsPlayerInRangeOfPoint(playerid, 2.0, 320.981262, 308.219970, 999.148437) || IsPlayerInRangeOfPoint(playerid,2.0, 1234.5601, 767.7869, 1010.8853) || IsPlayerInRangeOfPoint(playerid, 2.0, -330.4867, 1792.1184, 999.3145))
- {
- Dialog_Show(playerid, HealthDialog, DIALOG_STYLE_MSGBOX, "Selecione tipo de colete", "Selecione tipo de colete", "Colete leve", "Colete pesado");
- return true;
- }
- }
- else if(Faction[playerid] == FACTION_SACFD)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, 2374.1396, 235.2579, 2004.1659) || IsPlayerInRangeOfPoint(playerid, 2.0, -754.2998,-423.5245,1440.0979))
- {
- RestrictedVest{playerid} = true;
- SetPlayerHealthEx(playerid, 100.0);
- SetPlayerArmourEx(playerid, 50.0, 1);
- GivePlayerCash(playerid, -100);
- SendClientMessage(playerid, COLOR_BLUE, "> Saúde e colete restauradas. (-$100)");
- return true;
- }
- }
- else if(Faction[playerid] == FACTION_RESEARCH)
- {
- if(IsPlayerInRangeOfPoint(playerid,2.0,243.29104,1858.558349,14.084012) || IsPlayerInRangeOfPoint(playerid, 2.0, 247.9519,1894.1075,1100.2180) || IsPlayerInRangeOfPoint(playerid, 2.0, 1010.9411, -1138.9850, 2025.2595))
- {
- Dialog_Show(playerid, HealthDialog, DIALOG_STYLE_MSGBOX, "Selecione tipo de colete", "Selecione tipo de colete", "Colete leve", "Colete pesado");
- return true;
- }
- }
- return true;
- }
- CMD:alias(playerid, params[])//apelido
- {
- if(Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_COP || IsPlayerAdmin(playerid))
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.0, -219.4361,-316.4091,2030.7196) || IsPlayerInRangeOfPoint(playerid, 3.0, 248.341934, 1859.595825, 14.084012) || IsPlayerInRangeOfPoint(playerid, 3.0, 656.1666, -568.3339, 1001.1180) && Faction[playerid] == FACTION_COP || IsPlayerAdmin(playerid))
- {
- if(Faction[playerid] == FACTION_COP && strfind(FactionCustomRank[playerid], "SID") == -1) return SysMsg(playerid, "Você deve ser um membro SID para usar isso.");
- if(sscanf(params, "s[24]", hmData[playerid][hmNewName])) return SysMsg(playerid,"Use: /alias [Nome_Sobrenome]");
- if(strcmp(GetName(playerid),hmData[playerid][hmNewName],false) == 0) return SysMsg(playerid,"Você já está usando esse nome.");
- if(!IsValidRoleplayName(hmData[playerid][hmNewName])) return SysMsg(playerid,"Esse nome não é RP.");
- if(strcmp(hmData[playerid][hmNewName], hmData[playerid][hmOldName], true)) // IF NEW NAME IS NOT THEIR REAL NAME
- {
- if(MySQLCheckAccount(hmData[playerid][hmNewName], playerid) != 0) return SysMsg(playerid,"Você não pode usar um nome que já existe"); // CHECK IF EXISTS, IF NEW NAME IS REAL NAME, WORK.
- }
- if(strlen(hmData[playerid][hmNewName]) > 24) return SysMsg(playerid,"Error: O comprimento máximo do nome é de 24 caracteres.");
- if(hmData[playerid][hmActive] == 1) return SysMsg(playerid, "Você não pode usar isso quando você já está alias. Volte ao seu nome original e depois alias de novo.");
- format(hmData[playerid][hmOldName], MAX_PLAYER_NAME, GetName(playerid));
- if(hmData[playerid][hmActive] == 0)
- {
- format(hmData[playerid][hmOldName], MAX_PLAYER_NAME, GetName(playerid));
- }
- if(SetPlayerName(playerid, hmData[playerid][hmNewName]) != 1) return SysMsg(playerid, "Esse nome é muito curto, muito longo, em uso, o mesmo ou contém caracteres inválidos.");
- SendClientMessageF(playerid,COLOR_DARKBLUE,"Você mudou seu apelido para: %s. Use /removealiaspara retornar ao seu nome original.", hmData[playerid][hmNewName]);
- if(Faction[playerid] == FACTION_RESEARCH)
- {
- foreach(new i: Player)
- {
- if(Faction[i] == FACTION_RESEARCH && i != playerid)
- {
- SendClientMessageF(i,COLOR_DARKBLUE,"%s mudou seu apelido para %s.", hmData[playerid][hmOldName], hmData[playerid][hmNewName]);
- }
- }
- }
- if(!strcmp(hmData[playerid][hmNewName], hmData[playerid][hmOldName], true))
- {
- hmData[playerid][hmActive] = 0;
- return true;
- }
- hmData[playerid][hmActive] = 1;
- }
- else return SysMsg(playerid, "Você é precisa estar em estar na bancada para ser capaz de usar este comando.");
- }
- else return SysMsg(playerid, CMDFMSG);
- return true;
- }
- CMD:removealias(playerid)
- {
- if(Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_COP || IsPlayerAdmin(playerid))
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.0, -219.4361,-316.4091,2030.7196) || IsPlayerInRangeOfPoint(playerid, 3.0, 248.341934, 1859.595825, 14.084012) || IsPlayerInRangeOfPoint(playerid, 3.0, 656.1666, -568.3339, 1001.1180) && Faction[playerid] == FACTION_COP || IsPlayerAdmin(playerid))
- {
- if(Faction[playerid] == FACTION_COP && strfind(FactionCustomRank[playerid], "SID") == -1) return SysMsg(playerid, "Você deve ser o SID do membro para usar este.");
- if(strlen(hmData[playerid][hmOldName]) < 4) return SysMsg(playerid, "Você não está alias.");
- SetPlayerName(playerid, hmData[playerid][hmOldName]);
- hmData[playerid][hmActive] = 0;
- hmData[playerid][hmOldName][0] = 0;
- hmData[playerid][hmNewName][0] = 0;
- SendClientMessage(playerid, COLOR_BLUE, "Você voltou ao nome do seu personagem.");
- }
- else return SysMsg(playerid, "Você precisa estar no banco de trabalho para poder usar esse comando.");
- }
- else return SysMsg(playerid, CMDFMSG);
- return true;
- }
- CMD:attachgps(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(HasGPSMount[playerid] != -1) return SysMsg(playerid, "Você não possui um GPS montável em você.");
- if(Faction[playerid] == FACTION_COP || Faction[playerid] == FACTION_RESEARCH)
- {
- new vid = GetPlayerVehicleID(playerid), closest;
- if(vid == 0)
- {
- closest = GetClosestVehicle(playerid);
- new Float:vpos[3];
- GetVehiclePos(closest, vpos[0], vpos[1], vpos[2]);
- if(closest == VehicleData[closest][IdVehicle] && IsPlayerInRangeOfPoint(playerid, 3.0, vpos[0], vpos[1], vpos[2]))
- {
- HasGPSMount[playerid] = VehicleData[closest][VehSQLID];
- MySQLUpdateInt(SQLID[playerid], "GPSMount", VehicleData[closest][VehSQLID], "players");
- SendClientMessage(playerid, COLOR_WHITE, "Você montou o dispositivo GPS no veículo, você pode acompanhá-lo usando /ping");
- format(gstr, sizeof(gstr),"* %s pega um pequeno dispositivo e o planta sob o veículo *",NameRP(playerid));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 6000);
- OnePlayAnim(playerid, "BOMBER","BOM_Plant_Loop",4.0, 0, 0, 0, 0, 0); // Place Bomb
- return true;
- }
- }
- }
- return true;
- }
- CMD:ping(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(HasGPSMount[playerid] < 1) return SysMsg(playerid, "Você não montou um GPS em um veículo");
- if(Faction[playerid] == FACTION_COP || Faction[playerid] == FACTION_RESEARCH)
- {
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(VehicleData[v][VehSQLID] == HasGPSMount[playerid])
- {
- new zone[MAX_ZONE_NAME];
- if(!IsVehicleSpawned(VehicleData[v][IdVehicle]))
- {
- format(sgstr,sizeof(sgstr),"* %s tira um dispositivo e empurra alguns botões *", NameRP(playerid));
- ProxDetector(20.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- PlayerPlaySound(playerid, SOUND_CHECKPOINT, 0.0, 0.0, 0.0);
- SysMsg(playerid,"{FFFFFF}*** To dispositivo não recebeu resposta ***");
- return true;
- }
- GetVehicle2DZone(VehicleData[v][IdVehicle], zone, MAX_ZONE_NAME);
- format(sgstr,sizeof(sgstr),"* %s tira um dispositivo e empurra alguns botões *", NameRP(playerid));
- ProxDetector(20.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(sgstr,sizeof(sgstr),"{FFFFFF}*** O veículo foi localizado em {FF0000}%s {FFFFFF}***",zone);
- SendClientMessage(playerid,COLOR_WHITE,sgstr);
- PlayerPlaySound(playerid, SOUND_CHECKPOINT, 0.0, 0.0, 0.0);
- return true;
- }
- }
- }
- return true;
- }
- //==================== Fim ==================================//
- //2 Elite Trucking
- //Elite Trucking
- CMD:limpaneve(playerid, params[])//limpaneve
- {
- if(!Logged{playerid}) return true;
- new year, month, day;
- getdate(year, month, day);
- if(month != 12 && !IsPlayerAdmin(playerid)) return SysMsg(playerid, "Este comando só pode ser usado em dezembro.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você deve estar em um veículo para usar este comando.");
- if(Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_TRUCKING || IsPlayerAdmin(playerid))
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- if(IsFactionVehicle(vehicleid) != Faction[playerid] && !IsPlayerAdmin(playerid)) return SysMsg(playerid,"Você precisa estar em um veiculo de facção.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER && (GetPlayerVehicleSeat(playerid) != 1 && GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)) return SysMsg(playerid,"Você precisa estar no acento de condução or front passenger.");
- new modelid = GetVehicleModel(vehicleid);
- if(!SnowPlow{vehicleid})
- {
- if(VehObject[vehicleid] != INVALID_OBJECT_ID) return SysMsg(playerid, "Este veículo já tem um objeto anexado a ele.");
- if(modelid == 554) //yosemite
- {
- VehObject[vehicleid] = CreateVehicleObject(19601, vehicleid, 0.0, 2.7, -0.6, 0.0, 0.0, 180.0);
- SnowPlow{vehicleid} = true;
- }
- else if(modelid == 524) //cement truck
- {
- VehObject[vehicleid] = CreateVehicleObject(19601, vehicleid, 0.0, 4.15, -1.45, 0.0, 0.0, 180);
- SnowPlow{vehicleid} = true;
- }
- else SysMsg(playerid, "Você não está em um veículo adequado para usar isso.");
- }
- else
- {
- DestroyDynamicObjectEx(VehObject[vehicleid], "VehObject[vehicleid] 3");
- VehObject[vehicleid] = INVALID_OBJECT_ID;
- SnowPlow{vehicleid} = false;
- }
- }
- else SysMsg(playerid, "Você não pode usar este comando.");
- return true;
- }
- CMD:trailers(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid,"Só os camionistas podem usar este comando.");
- if(FactionRank[playerid] < 3) return SysMsg(playerid,"ocê deve ser pelo menos Rank 3 para usar isso.");
- if(!IsPlayerInRangeOfPoint(playerid, 1.5, 611.9290, 1653.3989, 6.9922)) return SysMsg(playerid,"Você não está na garagem..");
- format(gstr, sizeof(gstr), "Artigo Trailer 1");
- strcat(gstr, "\nArtigo Trailer 2");
- strcat(gstr, "\nArtigo Trailer 3");
- strcat(gstr, "\nTrailer de Petrol");
- strcat(gstr, "\nTrailer de utilidade");
- Dialog_Show(playerid, TruckingTrailers, DIALOG_STYLE_LIST, "Trailers", gstr, "Selecionar", "Cancelar");
- return true;
- }
- CMD:checkcombustivel(playerid, params[])//checkcombustivel
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_TRUCKING || IsPlayerAdmin(playerid))
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.5, 673.5842,1833.3052,5.1829) || IsFactionVehicle(GetPlayerVehicleID(playerid)) == FACTION_TRUCKING)
- {
- new subinfo[150];
- gstr[0] = EOS;
- for(new v = 0; v < MAX_FUEL_STATIONS; v++)
- {
- format(subinfo, sizeof(subinfo), "%s Posto de gasolina (Gasolina: %i / %i Gal. - Diesel: %i / %i Gal.)\n\n", FuelStations[v][StationDescription], FuelStations[v][PetrolAmount], FuelStations[v][PetrolAmountMax], FuelStations[v][DieselAmount], FuelStations[v][DieselAmountMax]);
- strcat(gstr, subinfo);
- }
- Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Fuel Supply", gstr, "Done", "");
- }
- else return SysMsg(playerid,"Você não está no escritório Elite Trucking Gas Management ou um caminhão de facções.");
- }
- else SysMsg(playerid,"Somente os caminhoneiros podem usar esse comando.");
- return true;
- }
- CMD:entregacombustivel(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid,"Somente os caminhoneiros podem usar esse comando.");
- if(FactionRank[playerid] < 3) return SysMsg(playerid,"Você deve ser pelo menos o ranking 3.");
- if(!IsPlayerInRangeOfPoint(playerid, 30.0, 673.5842,1833.3052,5.1829)) return SysMsg(playerid,"Você não está no escritório Elite Trucking Gas Management.");
- new vehicleid = GetPlayerVehicleID(playerid);
- if(!IsTruck(vehicleid)) return SysMsg(playerid,"Você precisa estar em um truck.");
- if(DeliveringFuel[playerid] > 0) return SysMsg(playerid,"Você já está fornecendo combustível.");
- if(GetVehicleTrailer(vehicleid) > 0) return SysMsg(playerid,"Por favor, retire todos os trailers antes de começar.");
- if(isnull(params)) return SysMsg(playerid,"Use: /entregacombustivel [gasolina/diesel]");
- if(strcmp("gasolina", params, true) == 0)
- {
- DeliveringFuel[playerid] = 1;
- DeliveringFuelVeh[playerid][0] = vehicleid;
- DeiveringFuelAmount[playerid] = 0;
- IsTrucking[playerid] = 1;
- DeiveringFuelType[playerid] = FUEL_GASOLINA;
- SetPlayerCheckpointEx(playerid, -1021.005554, -661.875671, 32.007812, 7.0);
- SendClientMessage(playerid, COLOR_WHITE, "[ENTREGA GASOLINA] Dirija até a fábrica de produtos químicos e pegue seu petroleiro.");
- return true;
- }
- else if(strcmp("diesel", params, true) == 0)
- {
- DeliveringFuel[playerid] = 1;
- DeliveringFuelVeh[playerid][0] = vehicleid;
- DeiveringFuelAmount[playerid] = 0;
- IsTrucking[playerid] = 1;
- DeiveringFuelType[playerid] = FUEL_DIESEL;
- SetPlayerCheckpointEx(playerid, -1021.005554, -661.875671, 32.007812, 7.0);
- SendClientMessage(playerid, COLOR_WHITE, "[ENTREGA DIESEL] Dirija até a fábrica de produtos químicos e pegue seu petroleiro.");
- return true;
- }
- SysMsg(playerid,"Use: /entregacombustivel [gasolina/diesel]");
- return true;
- }
- CMD:finalizarcombustivel(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid,"Somente os caminhoneiros podem usar esse comando.");
- if(DeliveringFuel[playerid] == 0) return SysMsg(playerid,"Você não está fornecendo combustível.");
- if(DeliveringFuel[playerid] == 1)
- {
- DisablePlayerCheckpoint(playerid);
- DeiveringFuelAmount[playerid] = 0;
- DeiveringFuelType[playerid] = 0;
- DeliveringFuel[playerid] = 0;
- DeliveringFuelVeh[playerid][0] = 0;
- DeliveringFuelVeh[playerid][1] = 0;
- IsTrucking[playerid] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "[ENTREGA DE COMBUSTÍVEL] Trabalho cancelado.");
- return true;
- }
- SetPlayerCheckpointEx(playerid, 585.711547, 1664.336669, 6.992187, 10.0);
- DeliveringFuel[playerid] = 3;
- SendClientMessage(playerid, COLOR_WHITE, "[ENTREGA DE COMBUSTÍVEL] Dirija até a sede da Trucking para terminar e receber o pagamento.");
- return true;
- }
- CMD:reabastecerposto(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid,"Somente os caminhoneiros podem usar esse comando.");
- if(DeliveringFuel[playerid] != 2) return SysMsg(playerid,"Você não está fornecendo combustível.");
- if(EngineStatus[GetPlayerVehicleID(playerid)] == 1) return SysMsg(playerid,"Desligue o motor antes de descarregar o combustível.");
- new fuelstation = -1;
- for(new i = 0; i < MAX_FUEL_STATIONS; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 40.0, FuelStations[i][SignX], FuelStations[i][SignY], FuelStations[i][SignZ]))
- {
- fuelstation = i;
- break;
- }
- }
- if(fuelstation == -1) return SysMsg(playerid,"Você não está perto de um posto de combustível. (Red County, Bone County e Angel Pine)");
- new fuelamount;
- if(sscanf(params, "i", fuelamount)) return SysMsg(playerid,"Use: /reabastecerposto [Quantidade]");
- if(fuelamount < 1) return SysMsg(playerid,"O valor deve ser um número e maior que 0.");
- if(fuelamount > DeiveringFuelAmount[playerid]) return SysMsg(playerid,"Você não tem combustível suficiente no seu trailer de petroleiros.");
- switch(DeiveringFuelType[playerid])
- {
- case FUEL_GASOLINA:
- {
- if(fuelamount + FuelStations[fuelstation][PetrolAmount] > FuelStations[fuelstation][PetrolAmountMax]) return SysMsg(playerid,"Este posto de gasolina não consegue suportar muita gasolina.");
- FuelStations[fuelstation][PetrolAmount] += fuelamount;
- DeiveringFuelAmount[playerid] -= fuelamount;
- UpdateFuelStationSign(fuelstation);
- format(gstr, sizeof(gstr), "Você adicionou %i Galões de petróleo para o posto de gasolina %s. Você pode terminar com /finalizarcombustivel a qualquer momento.", fuelamount, FuelStations[fuelstation][StationDescription]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "[ENTREGA GASOLINA]\n%i / 10000 Galões", DeiveringFuelAmount[playerid]);
- UpdateDynamic3DTextLabelText(DeliveringFuelLabel[playerid], COLOR_WHITE, gstr);
- }
- case FUEL_DIESEL:
- {
- if(fuelamount + FuelStations[fuelstation][DieselAmount] > FuelStations[fuelstation][DieselAmountMax]) return SysMsg(playerid,"Este posto de gasolina não consegue suportar tanto diesel.");
- FuelStations[fuelstation][DieselAmount] += fuelamount;
- DeiveringFuelAmount[playerid] -= fuelamount;
- UpdateFuelStationSign(fuelstation);
- format(gstr, sizeof(gstr), "Você abasteceu %i galões de diesel para o posto de gasolina %s. Você pode terminar com /finalizarcombustivel a qualquer momento.", fuelamount, FuelStations[fuelstation][StationDescription]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "[ENTREGA DIESEL]\n%i / 8000 Gallons", DeiveringFuelAmount[playerid]);
- UpdateDynamic3DTextLabelText(DeliveringFuelLabel[playerid], COLOR_WHITE, gstr);
- }
- }
- return true;
- }
- CMD:estregarestoque(playerid, params[])//estregarestoque
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid,"Somente os caminhoneiros podem usar esse comando.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o rank 2.");
- if(!IsPlayerInRangeOfPoint(playerid, 3.0, 608.5102,1651.6327,6.9922)) return SysMsg(playerid,"Você não está no escritório Elite Trucking.");
- if(DeliveringStock[playerid] > 0) return SysMsg(playerid,"Você já está entregando estoque.");
- new bcount;
- gstr[0] = EOS;
- for(new b = 0; b < MAX_BIZZ; b++)
- {
- if(BizzData[b][BizzRequestStock] == 1 && BizzData[b][BizzETDelivering] == 0)//
- {
- strcat(gstr, BizzData[b][BizzDescription]);
- strcat(gstr, "\n");
- bcount ++;
- if(bcount == 40) break;
- }
- }
- if(bcount > 0)
- {
- SendClientMessage(playerid,COLOR_GOLD,"Selecione até 3 empresas para reabastecer ao mesmo tempo...");
- Dialog_Show(playerid, StockDelivery, DIALOG_STYLE_LIST, "Lista de empresas que solicitam uma entrega", gstr, "Adicionar", "Cancelar");
- }
- else SysMsg(playerid,"Não há empresas que solicitou um reabastecimento.");
- return true;
- }
- CMD:verchamadas(playerid, params[])//verchamadas
- {
- if(Faction[playerid] != FACTION_TRUCKING && !IsPlayerAdmin(playerid)) return SysMsg(playerid, "Você deve estar no Elite Trucking para usar este comando.");
- new calls = 0;
- foreach(new i: Player)
- {
- if(HasActiveTruckingCall{i})
- {
- sgstr[0] = EOS;
- strunpack(sgstr, TruckingCallMsg[i]);
- SendClientMessageF(playerid, COLOR_WHITE, "[Elite Trucking Hotline]: [PN: %i] [Nome: %s] %s", PhoneData[i][pNumber], NameRP(i), sgstr);
- calls++;
- }
- }
- if(calls == 0) return SysMsg(playerid, "Sem chamadas activas.");
- return true;
- }
- CMD:limparchamada(playerid, params[])
- {
- new playa = -1;
- if(Faction[playerid] != FACTION_TRUCKING && !IsPlayerAdmin(playerid)) return SysMsg(playerid, "Você deve estar no Elite Trucking para usar este comando.");
- if(sscanf(params, "u", playa)) return SysMsg(playerid, "Use: /limparchamada [playerID ou name]");
- if(!HasActiveTruckingCall{playa}) return SysMsg(playerid, "Essa pessoa nem sequer tem uma ligação para limpar.");
- HasActiveTruckingCall{playa} = false;
- strdel(TruckingCallMsg[playa], 0, 128);
- format(gstr, sizeof(gstr), "Você limpou a chamada de %s.", NameRP(playa));
- return true;
- }
- //==================== Fim ==================================//
- //3 SACFD
- //SACFD
- CMD:heal(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_COP || Faction[playerid] == FACTION_RESEARCH)
- {
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /heal [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid,"Esse jogador não está conectado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode se curar.");
- if(!Dead{playa}) return SysMsg(playerid, "Este jogador não está abatido.");
- if(DeathTimer[playa] == 0) return SysMsg(playerid, "O temporizador de morte deste jogador expirou. Eles não podem ser curados.");
- new injuriescount = 0, injuries[100], namestring[64];
- gstr[0] = EOS;
- strcat(gstr, "Tipo de lesão\tLocalização\tArma\n");
- for(new hit = 0; hit < HitCount[playa]; hit++)
- {
- if(Injuries[playa][hit][pBodypart] > 0)
- {
- switch(Injuries[playa][hit][pWeaponID])
- {
- // Blunt Weapons
- case 0,1,2,3,5,6,7,10,11,12,13,14,15,41,42,43,44,45,46:
- {
- format(injuries, sizeof(injuries), "Traumatismo craniano\t%s\t%s\n", ReturnBodyPartName(Injuries[playa][hit][pBodypart]), GetWeaponNameFromID(Injuries[playa][hit][pWeaponID]));
- }
- // Stab Weapons
- case 4, 8, 9:
- {
- format(injuries, sizeof(injuries), "Ferida da facada\t%s\t%s\n", ReturnBodyPartName(Injuries[playa][hit][pBodypart]), GetWeaponNameFromID(Injuries[playa][hit][pWeaponID]));
- }
- // Gunshot Wounds
- case 22..34,38:
- {
- format(injuries, sizeof(injuries), "Ferimento de bala\t%s\t%s\n", ReturnBodyPartName(Injuries[playa][hit][pBodypart]), GetWeaponNameFromID(Injuries[playa][hit][pWeaponID]));
- }
- // Explosion/Burn
- case 16,17,18,35,36,37,39,40,51:
- {
- format(injuries, sizeof(injuries), "Explosão/Queimadura\t%s\t%s\n", ReturnBodyPartName(Injuries[playa][hit][pBodypart]), GetWeaponNameFromID(Injuries[playa][hit][pWeaponID]));
- }
- default:
- {
- format(injuries, sizeof(injuries), "Desconhecido\t%s\t%s\n", ReturnBodyPartName(Injuries[playa][hit][pBodypart]), GetWeaponNameFromID(Injuries[playa][hit][pWeaponID]));
- // Unknown wound
- }
- }
- injuriescount ++;
- strcat(gstr, injuries);
- }
- }
- format(namestring, sizeof(namestring), "Lesões de %s", NameRP(playa));
- if(injuriescount > 0)
- {
- Healing[playerid] = playa;
- Dialog_Show(playerid, HealDialog, DIALOG_STYLE_TABLIST_HEADERS, namestring, gstr, "Fechar", "");
- }
- else if(injuriescount == 0 && Dead{playa}) RevivePlayer(playa);
- else SysMsgF(playerid, "%s não tem quaisquer lesões.", NameRP(playa));
- }
- else SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- return true;
- }
- CMD:maca(playerid, params[])//maca //retcher
- {
- if(!Logged{playerid}) return true;
- new action[9], playa = -1;
- if(sscanf(params, "s[9]U(-1)", action, playa)) return SysMsg(playerid,"Use: /maca [equipar/dropar/pegar/guardar/carregar/descarregar/sair/intoambu]");
- new Float:pX,Float:pY,Float:pZ, Float:oX,Float:oY,Float:oZ;
- GetPlayerPos(playerid, pX, pY, pZ);
- if(strcmp("equipar", action, true) == 0)
- {
- if(Faction[playerid] != FACTION_SACFD && !IsESU{playerid}) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você precisa ser o rank 2 para usar isso.");
- if(StretcherEquipped[playerid] > 0) return SysMsg(playerid,"Você já tem uma maca.");
- if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 416) return SysMsg(playerid,"Você deve estar na parte de trás de uma ambulância para obter uma maca.");
- if(GetPlayerVehicleSeat(playerid) != 2 && GetPlayerVehicleSeat(playerid) != 3) return SysMsg(playerid,"Você deve estar na parte de trás de uma ambulância para obter uma maca.");
- StretcherEquipped[playerid] = CreateDynamicObject(1997, pX, pY + 1.5, pZ - 1.0, 0.0, 0.0, 100.0);//2146
- StretcherHolding[playerid] = 1;
- RemovePlayerFromVehicle(playerid);
- format(gstr, sizeof(gstr),"* Paramédico %s puxa uma maca para fora da ambulância. *",NameEx(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- if(strcmp("dropar", action, true) == 0)
- {
- new Float:pXb, Float:pYb;
- new Float:Ang = GetXYInFrontOfPlayer(playerid, pXb, pYb, 1.7);
- if(Faction[playerid] != FACTION_SACFD && !IsESU{playerid}) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(StretcherHolding[playerid] == 0) return SysMsg(playerid,"Você precisa ter uma maca.");
- if(StretcherPlayerID[playerid] != -1) return SysMsg(playerid,"Você não pode deixar a maca com alguém sobre ela.");
- DestroyDynamicObjectEx(StretcherEquipped[playerid], "StretcherEquipped[playerid] 0");
- StretcherEquipped[playerid] = CreateDynamicObject(1997, pXb, pYb, pZ-1.0, 0.0, 0.0, Ang+180);
- StretcherHolding[playerid] = 0;
- StretcherTimer[playerid] = SetTimerEx("DestroyStretcher", 600000, 0, "ii", playerid, StretcherEquipped[playerid]);
- foreach(new p: Player) Streamer_Update(p);
- format(gstr, sizeof(gstr),"* Paramédico %s trava as rodas da maca no lugar. *",NameEx(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- if(strcmp("pegar", action, true) == 0)
- {
- GetDynamicObjectPos(StretcherEquipped[playerid],oX,oY,oZ);
- new Float:distance = DistanceBetweenPoints(pX,pY,pZ,oX,oY,oZ);
- if(Faction[playerid] != FACTION_SACFD && !IsESU{playerid}) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(StretcherEquipped[playerid] == 0) return SysMsg(playerid,"Você precisa ter uma maca.");
- if(StretcherPlayerID[playerid] != -1) return SysMsg(playerid,"Você não pode deixar a maca com alguém sobre ela.");
- if(StretcherHolding[playerid] == 2) return SysMsg(playerid,"Você já tem uma maca");
- if(distance > 5) return SysMsg(playerid,"Você não está perto o suficiente.");
- KillTimer(StretcherTimer[playerid]);
- StretcherTimer[playerid] = -1;
- StretcherHolding[playerid] = 2;
- format(gstr, sizeof(gstr),"* Paramédico %s destrava as rodas na maca *",NameEx(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- if(strcmp("guardar", action, true) == 0)
- {
- if(Faction[playerid] != FACTION_SACFD && !IsESU{playerid}) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você precisa ser rank 2 para usar este comando.");
- if(StretcherEquipped[playerid] == 0) return SysMsg(playerid,"Você não tem uma maca para guardar.");
- if(StretcherPlayerID[playerid] >= 0) return SysMsg(playerid,"Descarregue a maca antes de guardar.");
- new Float:vX, Float:vY, Float:vZ;
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(GetVehicleModel(v) == 416)
- {
- GetVehiclePos(v, vX, vY, vZ);
- if(IsPlayerInRangeOfPoint(playerid, 10.0, vX, vY, vZ))
- {
- DestroyDynamicObjectEx(StretcherEquipped[playerid], "StretcherEquipped[playerid] 1");
- StretcherEquipped[playerid] = 0;
- StretcherHolding[playerid] = 0;
- format(gstr, sizeof(gstr),"* Paramédico %s coloca a maca na parte de trás da ambulância. *",NameEx(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- }
- SysMsg(playerid,"Você deve estar perto de uma ambulância para arrumar uma maca.");
- return true;
- }
- if(strcmp("carregar", action, true) == 0)
- {
- if(Faction[playerid] != FACTION_SACFD && !IsESU{playerid}) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você precisa ser o rank 2 para usar isso.");
- if(StretcherEquipped[playerid] == 0) return SysMsg(playerid,"Você deve ter uma maca para carregar alguém sobre ela.");
- if(StretcherPlayerID[playerid] >= 0) return SysMsg(playerid,"Você já tem alguém carregado na maca.");
- if(sscanf(params, "s[8]u", action, playa)) return SysMsg(playerid,"Use: /maca carregar [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid,"Esse jogador não está conectado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode fazer isso com você mesmo.");
- if(StretcherEquipped[playa] > 0) return SysMsg(playerid,"Você não pode colocar alguém com uma maca em uma maca.");
- if(StretcherHolding[playerid] == 0) return SysMsg(playerid, "Você precisa segurar a maca.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,3.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para colocá-lo em uma maca.");
- StretcherPlayerID[playerid] = playa;
- OnePlayAnim(playa,"BEACH", "bather", 4.0, 1, 0, 0, 1, -1);
- format(gstr, sizeof(gstr),"* Paramédico %s agora está puxando a maca com %s sobre. *",NameEx(playerid),NameRP(StretcherPlayerID[playerid]));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s agora em sua maca. Você pode tirá-los usando '/maca descarregar'",NameEx(StretcherPlayerID[playerid]));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"%s colocou você na maca. Use '/maca sair' se você não quer estar com isso.",NameEx(playerid));
- SendClientMessage(StretcherPlayerID[playerid],COLOR_WHITE,gstr);
- return true;
- }
- if(strcmp("descarregar", action, true) == 0)
- {
- if(Faction[playerid] != FACTION_SACFD && !IsESU{playerid}) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você precisa ser o rank 2 para usar isso.");
- if(StretcherEquipped[playerid] == 0) return SysMsg(playerid,"You must have a stretcher to load someone on it.");
- if(StretcherPlayerID[playerid] == -1) return SysMsg(playerid,"You don't even have someone loaded on the stretcher.");
- if(StretcherHolding[playerid] == 0) return SysMsg(playerid, "You need to be holding the stretcher");
- new Float:playerpos[4];
- TogglePlayerControllable(StretcherPlayerID[playerid], 1);
- GetPlayerPos(playerid, playerpos[0], playerpos[1], playerpos[2]);
- GetXYInFrontOfPlayer(playerid, playerpos[0], playerpos[1], -2);
- SetPlayerPos(StretcherPlayerID[playerid], playerpos[0], playerpos[1], playerpos[2]);
- ClearAnimations(StretcherPlayerID[playerid]);
- format(gstr, sizeof(gstr),"%s has been removed from the stretcher.",NameEx(StretcherPlayerID[playerid]));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"%s has removed you from their stretcher.",NameEx(playerid));
- SendClientMessage(StretcherPlayerID[playerid],COLOR_WHITE,gstr);
- StretcherPlayerID[playerid] = -1;
- return true;
- }
- if(strcmp("sair", action, true) == 0)
- {
- foreach(new i: Player)
- {
- if(StretcherPlayerID[i] == playerid)
- {
- new Float:playerpos[4];
- TogglePlayerControllable(playerid, 1);
- GetPlayerPos(i, playerpos[0], playerpos[1], playerpos[2]);
- GetXYInFrontOfPlayer(i, playerpos[0], playerpos[1], 6.0);
- SetPlayerPos(playerid, playerpos[0], playerpos[1], playerpos[2]);
- ClearAnimations(playerid);
- format(gstr, sizeof(gstr),"%s saiu da maca.",NameEx(playerid));
- SendClientMessage(i,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Você saiu da maca de %s.",NameEx(i));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- StretcherPlayerID[i] = -1;
- return true;
- }
- }
- SysMsg(playerid,"Você não está em uma maca tão claramente não pode sair de um.");
- return true;
- }
- if(strcmp("intoambu", action, true) == 0)//observar
- {
- if(Faction[playerid] != FACTION_SACFD && !IsESU{playerid}) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você precisa ser o rank 2 para usar isso.");
- if(StretcherEquipped[playerid] == 0) return SysMsg(playerid,"Você deve ter uma maca.");
- if(StretcherPlayerID[playerid] == -1) return SysMsg(playerid,"Você nem tem alguém carregado na maca.");
- new Float:vX, Float:vY, Float:vZ;
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(GetVehicleModel(v) == 416)
- {
- GetVehiclePos(v, vX, vY, vZ);
- if(IsPlayerInRangeOfPoint(playerid, 10.0, vX, vY, vZ))
- {
- new seatid = 2;
- foreach(new i: Player)
- {
- if(GetPlayerVehicleID(i) == v)
- {
- if(GetPlayerVehicleSeat(i) == 2) seatid = 3;
- if(GetPlayerVehicleSeat(i) == 3 && seatid == 3) seatid = -1;
- }
- }
- if(seatid == -1) return SysMsg(playerid,"Não há assentos livres na parte de trás desta ambulância.");
- PutPlayerInVehicle(StretcherPlayerID[playerid], v, seatid);
- TogglePlayerControllable(StretcherPlayerID[playerid], 1);
- format(gstr, sizeof(gstr),"* Paramédico %s empurra a maca com %s na parte de trás da ambulância. *",NameEx(playerid),NameRP(StretcherPlayerID[playerid]));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- DestroyDynamicObjectEx(StretcherEquipped[playerid], "StretcherEquipped[playerid] 2");
- StretcherEquipped[playerid] = 0;
- StretcherPlayerID[playerid] = -1;
- StretcherHolding[playerid] = 0;
- return true;
- }
- }
- }
- SysMsg(playerid,"Você deve estar perto de uma ambulância, para colocar uma maca dentro.");
- return true;
- }
- return true;
- }
- CMD:str(playerid, params[]) return cmd_maca(playerid, params);
- CMD:acriarfogo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if((Faction[playerid] == FACTION_SACFD && FactionRank[playerid] > 8) || IsPlayerAdminLevelOK(playerid, 3))
- {
- //if(GetPlayerInterior(playerid) > 0) return SysMsg(playerid, "You cannot create a fire here.");
- if(isnull(params)) return SysMsg(playerid,"Use: /criarfogo [pequeno/med/grande]");
- if(strcmp("pequeno", params, true) == 0)
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- GetXYInFrontOfPlayer(playerid, x, y, 2.5);
- PlaceFire(x, y, z, 1, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), true);
- return true;
- }
- if(strcmp("med", params, true) == 0)
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- GetXYInFrontOfPlayer(playerid, x, y, 2.5);
- PlaceFire(x, y, z, 2, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), true);
- return true;
- }
- if(strcmp("grande", params, true) == 0)
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- GetXYInFrontOfPlayer(playerid, x, y, 2.5);
- PlaceFire(x, y, z, 3, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), true);
- return true;
- }
- }
- return true;
- }
- CMD:criarfogo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if((Faction[playerid] == FACTION_SACFD && FactionRank[playerid] > 8) || IsPlayerAdminLevelOK(playerid, 2))
- {
- //if(GetPlayerInterior(playerid) > 0) return SysMsg(playerid, "You cannot create a fire here.");
- if(isnull(params)) return SysMsg(playerid,"Use: /criarfogo [pequeno/med/gramde]");
- if(strcmp("pequeno", params, true) == 0)
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- GetXYInFrontOfPlayer(playerid, x, y, 2.5);
- PlaceFire(x, y, z, 1, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), false);
- return true;
- }
- if(strcmp("med", params, true) == 0)
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- GetXYInFrontOfPlayer(playerid, x, y, 2.5);
- PlaceFire(x, y, z, 2, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), false);
- return true;
- }
- if(strcmp("grande", params, true) == 0)
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- GetXYInFrontOfPlayer(playerid, x, y, 2.5);
- PlaceFire(x, y, z, 3, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), false);
- return true;
- }
- }
- return true;
- }
- CMD:scba(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_SACFD || (Faction[playerid] == FACTION_COP && IsESU{playerid}))
- {
- new playerskin = GetPlayerSkin(playerid);
- if(Faction[playerid] == FACTION_SACFD && (playerskin != 277 && playerskin != 278 && playerskin != 279)) return SendClientMessage(playerid, COLOR_WHITE, "Você precisa de seu equipamento de bunker em primeiro lugar!");
- if(Faction[playerid] == FACTION_COP && IsESU{playerid} && (playerskin != 277 && playerskin != 278 && playerskin != 279)) SetPlayerSkinEx(playerid, 279);
- if(scba[playerid] == 0)
- {
- new index = GetFreePlayerObjectIndex(playerid);
- if(index != -1)
- {
- AttachedObjects[playerid][index][aoModelID] = 1008;
- AttachedObjects[playerid][index][aoBone] = 1;
- SetPlayerAttachedObject(playerid, index, 19816, 1, -0.012000, -0.187999, 0.000000, -0.499998, -91.499885, 8.499999, 1.162999, 1.238000, 1.291000);
- SendClientMessage(playerid, COLOR_WHITE, "Seu SCBA está agora ligado");
- OnePlayAnim(playerid,"PARACHUTE","PARA_Land",4,0,0,0,0,0);
- scba[playerid] = 1;
- }
- else return SysMsg(playerid, "Você tem muitos objetos em seu personagem. Remova um para usar este comando.");
- }
- else if(scba[playerid] == 1)
- {
- if(smask[playerid] == 1) return SendClientMessage(playerid, COLOR_WHITE, "Você precisa tirar sua máscara primeiro.");
- for(new index = 0; index < 6; index++)
- {
- if(AttachedObjects[playerid][index][aoModelID] == 1008)
- {
- AttachedObjects[playerid][index][aoModelID] = 0;
- AttachedObjects[playerid][index][aoBone] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Seu SCBA está agora desligado.");
- RemovePlayerAttachedObject(playerid, index);
- OnePlayAnim(playerid,"PARACHUTE","PARA_Land",4,0,0,0,0,0);
- scba[playerid] = 0;
- SetPlayerSkinEx(playerid, Clothes[playerid][4]);
- return true;
- }
- }
- SendClientMessage(playerid, COLOR_GREY, "Atualmente, você não possui equipamentos SCUBA equipados.");
- scba[playerid] = 0;
- }
- }
- else return SysMsg(playerid, "Você precisa ser um membro do SACFD ou ESU para usar esse comando.");
- return true;
- }
- CMD:smask(playerid, params[])
- {
- if(smask[playerid] == 0)
- {
- if(scba[playerid] == 0) return SendClientMessage(playerid, COLOR_WHITE, "Você precisa do seu SCBA primeiro!");
- new index = GetFreePlayerObjectIndex(playerid);
- if(index != -1)
- {
- OnePlayAnim(playerid,"goggles","goggles_put_on",4,0,0,0,0,0);
- AttachedObjects[playerid][index][aoModelID] = 19472;
- AttachedObjects[playerid][index][aoBone] = 2;
- SetPlayerAttachedObject(playerid,index,19472,2,-0.033000,0.124999,0.002999,-84.900085,-171.599990,2.100000,1.255001,1.124000,1.293001);
- SendClientMessage(playerid, COLOR_WHITE, "Sua máscara SCBA está agora ligada");
- smask[playerid] = 1;
- CanPlayerChoke{playerid} = false;
- }
- else return SendClientMessage(playerid, COLOR_GREY, "Você tem muitos objetos em seu personagem. Remova um para usar este comando.");
- }
- else if(smask[playerid] == 1)
- {
- for(new index = 0; index < 6; index++)
- {
- if(AttachedObjects[playerid][index][aoModelID] == 19472)
- {
- AttachedObjects[playerid][index][aoModelID] = 0;
- AttachedObjects[playerid][index][aoBone] = 0;
- RemovePlayerAttachedObject(playerid, index);
- SendClientMessage(playerid, COLOR_WHITE, "Sua máscara SCBA está agora desligada.");
- smask[playerid] = 0;
- OnePlayAnim(playerid,"goggles","goggles_put_on",4,0,0,0,0,0);
- CanPlayerChoke{playerid} = true;
- PlayerChoking{playerid} = false;
- return true;
- }
- }
- SendClientMessage(playerid, COLOR_GREY, "Você não possui máscara.");
- smask[playerid] = 0;
- }
- return true;
- }
- CMD:detox(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_SACFD) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- new playa = -1, method[8];
- if(sscanf(params, "s[8]u", method, playa)) return SysMsg(playerid,"Use: /detox [alcool/drogas] [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid,"Esse jogador não está conectado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode se desintoxicar.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,3.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para desintoxicá-los.");
- if(strcmp(method, "drogas", true) == 0)
- {
- if(DrugSpamTimer[playa] == 0) return SysMsg(playerid,"Esta pessoa não parece ter nenhum efeito colateral de drogas.");
- DrugSpamTimer[playa] = 0;
- SetPlayerWeather(playa, gServerWeather);
- DrunkLevel[playerid] = 0;
- SetPlayerDrunkLevel(playa, 0);
- TextDrawHideForPlayer(playa, WeedEffect);
- format(gstr, sizeof(gstr),"* Paramédico %s desintoxica %s usando uma injeção de Narcan. *", NameEx(playerid), NameEx(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Paramédico %s desintoxicado você para remover os efeitos das drogas.",NameEx(playerid));
- SendClientMessage(playa,COLOR_RED,gstr);
- format(gstr, sizeof(gstr),"Você desintoxicado %s para remover os efeitos das drogas.",NameEx(playa));
- SendClientMessage(playerid,COLOR_LIGHTBLUE,gstr);
- }
- else if(strcmp(method, "alcool", true) == 0)
- {
- new drunkLevel = GetPlayerDrunkLevel(playa);
- if(drunkLevel < 100) return SysMsg(playerid,"Esta pessoa não parece estar sob a influência do álcool.");
- if(drunkLevel > 10000) SetPlayerDrunkLevel(playa, 2500);
- else SetPlayerDrunkLevel(playa, 0);
- format(gstr, sizeof(gstr),"* Paramédico %s desintoxica %s para reduzir os níveis de álcool. *", NameEx(playerid), NameEx(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Paramédico %s te desintoxicou.",NameEx(playerid));
- SendClientMessage(playa,COLOR_RED,gstr);
- format(gstr, sizeof(gstr),"Você desintoxicou %s.",NameEx(playa));
- SendClientMessage(playerid,COLOR_LIGHTBLUE,gstr);
- }
- return true;
- }
- CMD:pagermsg(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_SACFD) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- if(FactionRank[playerid] < 5) return SysMsg(playerid,"Você precisa ser pelo menos o rank 5.");
- if(!PagerStatus{playerid}) return SysMsg(playerid, "Seu pager não está ligado.");
- if(isnull(params)) return SysMsg(playerid,"Use: /pagermsg [mensagem]");
- foreach(new t: Player)
- {
- if(Logged{t} && Faction[t] == FACTION_SACFD && PagerStatus{t} && Faction[t] == Faction[playerid])
- {
- if(t != playerid && ADuty[playerid] == 0)
- {
- format(gstr, sizeof(gstr), "A pager is heard. * BEEP BEEP * ((%s))", NameRP(t));
- ProxDetector(20.0,t,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- SendClientMessageF(t, COLOR_ORANGE, "[Pager Msg] %s: %s", GetPlayersFirstName(playerid), params);
- }
- }
- return true;
- }
- CMD:pager(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_SACFD)
- {
- if(PagerStatus{playerid})
- {
- PagerStatus{playerid} = false;
- SendClientMessage(playerid,COLOR_GOLD,"Seu pager agora está desligado.");
- }
- else
- {
- PagerStatus{playerid} = true;
- SendClientMessage(playerid,COLOR_GOLD,"Seu pager está agora ligado.");
- }
- }
- else return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- return true;
- }
- CMD:resgate(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_SACFD) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /rescue [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid,"Esse jogador não está conectado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode se resgatar.");
- if(WantsRescue[playa] == 1) return SysMsg(playerid,"Esse jogador já quer ajuda.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,3.5,tX,tY,tZ)) return SysMsg(playerid,"Você precisa estar proximo ao jogador para fazer isso.");
- WantsRescue[playa] = playerid+500;
- format(gstr, sizeof(gstr),"Bombeiro %s quer ajudá-lo. Escreva '/aceitar resgate' se você aceitar.",NameEx(playerid));
- SendClientMessage(playa,COLOR_RED,gstr);
- format(gstr, sizeof(gstr),"Você enviou um pedido de resgate para %s.",NameEx(playa));
- SendClientMessage(playerid,COLOR_LIGHTBLUE,gstr);
- return true;
- }
- CMD:cut(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_SACFD) return SysMsg(playerid,"Você precisa ser um membro do SACFD.");
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /cut [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid,"Esse jogador não está conectado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode se cortar.");
- if(WantsRescue[playa] != 1) return SysMsg(playerid,"Esse jogador não quer assistência.");
- new vehid = GetPlayerVehicleID(playa);
- if(vehid == 0) return SysMsg(playerid,"Esse jogador não está em um veículo.");
- if(!VehicleHasWindows(vehid)) return SysMsg(playerid,"Esse jogador não pode ser cortado desse veículo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para curá-los.");
- RemovePlayerFromVehicle(playa);
- format(gstr, sizeof(gstr),"* Bombeiro %s retira %s fora do %s usando uma grande ferramenta hidráulica. *",NameEx(playerid), NameEx(playa), GetVehicleName(vehid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- //==================== Fim ==================================//
- //4 SAN
- //SAN
- CMD:news(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(isnull(params)) return SysMsg(playerid,"Use: /news [mensagem]");
- NewsToggle{playerid} = true;
- foreach(new i: Player)
- {
- if(Logged{i} && NewsToggle{i})
- {
- SendSplitMessageF(i, COLOR_PINK, "[NEWS] %s %s: %s", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), params);
- }
- }
- return true;
- }
- CMD:checkweather(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- SendClientMessageF(playerid, COLOR_WHITE, "[Previão do tempo] Atual: %s, Esperado: %s", GetWeatherName(gServerWeather), GetWeatherName(gServerUpcomingWeather));
- return true;
- }
- CMD:interview(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 para usar isso.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(Interviewer != -1) return SysMsg(playerid,"Já existe uma entrevista.");
- new playa = -1, showname[20];
- if(sscanf(params, "us[20]", playa, showname)) return SysMsg(playerid,"Use: /entrevista [player id ou nome] [mostrar nome]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode entrevistar-se.");
- InterviewPlayer = playa;
- Interviewer = playerid;
- format(InterviewName, 20, showname);
- SendClientMessageF(InterviewPlayer, COLOR_WHITE, "%s começou uma entrevista com você. Use '/ichat' para entrar no ar!", NameEx(Interviewer));
- SendClientMessageF(Interviewer, COLOR_WHITE, "Você começou uma entrevista com %s. Use '/ichat' para conversar durante uma entrevista!", NameEx(InterviewPlayer));
- return true;
- }
- CMD:ichat(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(InterviewPlayer != playerid && Interviewer != playerid) return SysMsg(playerid,"Você não está em uma entrevista.");
- if(isnull(params)) return SysMsg(playerid,"Use: /ichat [mensagem]");
- NewsToggle{playerid} = true;
- if(InterviewPlayer == playerid)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && NewsToggle{i})
- {
- SendSplitMessageF(i, COLOR_PINK, "[ENTREVISTA DE NOTÍCIAS] %s %s: %s", InterviewName, NameEx(playerid), params);
- }
- }
- }
- else if(Interviewer == playerid)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && NewsToggle{i})
- {
- SendSplitMessageF(i, COLOR_PINK, "[ENTREVISTA DE NOTÍCIAS] Hospedeiro %s: %s", NameEx(playerid), params);
- }
- }
- }
- return true;
- }
- CMD:endinterview(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(Interviewer == -1) return SysMsg(playerid,"Não há entrevista.");
- if(Interviewer != playerid) return SysMsg(playerid,"Você não é o anfitrião da entrevista.");
- format(gstr, sizeof(gstr),"A entrevista foi encerrada por %s.", NameEx(Interviewer));
- SendClientMessage(InterviewPlayer,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Você encerrou a entrevista com %s.", NameEx(InterviewPlayer));
- SendClientMessage(Interviewer,COLOR_WHITE,gstr);
- InterviewPlayer = -1;
- Interviewer = -1;
- InterviewName[0] = 0;
- return true;
- }
- CMD:starttalkshow(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(TalkshowHost != -1) return SysMsg(playerid,"Já existe um programa de entrevistas ao vivo.");
- TalkshowHost = playerid;
- SendClientMessage(TalkshowHost, COLOR_WHITE, "Você iniciou um programa de entrevistas. Use /tchat para falar no ar!");
- foreach(new i: Player) if(Logged{i} && Faction[i] == FACTION_NEWS && i != playerid) SendClientMessageF(i, COLOR_PINK, "[TALKSHOW ALERTA] %s começou um programa de entrevistas.", NameEx(playerid));
- return true;
- }
- CMD:endtalkshow(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(TalkshowHost == -1) return SysMsg(playerid, "Não há talk shows ao vivo no momento.");
- TalkshowHost = -1;
- TalkshowPlayer = -1;
- for(new x = 0; x < sizeof(TalkshowCallers); x++) TalkshowCallers[x] = -1;
- SendClientMessage(playerid, COLOR_PINK, "Você encerrou o programa de entrevistas.");
- foreach(new i: Player) if(Logged{i} && Faction[i] == FACTION_NEWS && i != playerid) SendClientMessageF(i, COLOR_PINK, "[TALKSHOW ALERTA] %s terminou seu programa de entrevistas.", NameEx(playerid));
- return true;
- }
- CMD:callers(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(TalkshowHost == -1) return SysMsg(playerid, "Não há talk shows ao vivo no momento.");
- new playa, callers = 0;
- for(new x = 0; x < sizeof(TalkshowCallers); x++)
- {
- if(TalkshowCallers[x] != -1)
- {
- playa = TalkshowCallers[x];
- callers ++;
- SendClientMessageF(playerid, COLOR_PINK, "Chamador %i: %s [PN: %i]", callers, PhoneData[playa][pOwnerName], PhoneData[playa][pNumber]);
- }
- }
- return true;
- }
- CMD:acceptcaller(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(TalkshowHost == -1) return SysMsg(playerid, "Não há talk shows ao vivo no momento.");
- new callernumber;
- if(sscanf(params, "i", callernumber)) return SysMsg(playerid, "Use: /acceptcaller [Chamador do ID /chamarers]");
- if(callernumber < 0 && callernumber > sizeof(TalkshowCallers)) return SysMsgF(playerid, "Chamador ID deve ser maior que 0 e menos de %i", sizeof(TalkshowCallers));
- if(TalkshowCallers[callernumber - 1] == -1) return SendClientMessageF(playerid, COLOR_PINK, "Não há ninguém na linha %i", callernumber + 1);
- TalkshowPlayer = TalkshowCallers[callernumber - 1];
- SendClientMessageF(TalkshowPlayer, COLOR_PINK, "Você está agora ao vivo em um talk show com %s. Use /tchat para falar.", NameEx(playerid));
- SendClientMessageF(playerid, COLOR_PINK, "%s agora está em live no talk show.", NameEx(TalkshowPlayer));
- return true;
- }
- CMD:endcall(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(TalkshowHost == -1) return SysMsg(playerid, "Não há talk shows ao vivo no momento.");
- if(TalkshowPlayer == -1) return SysMsg(playerid, "Atualmente, você não está em uma chamada com alguém.");
- SendClientMessage(TalkshowPlayer, COLOR_PINK, "Sua conexão com SAN foi fechada.");
- SendClientMessageF(TalkshowHost, COLOR_PINK, "Você encerrou a chamada com %s", NameEx(TalkshowPlayer));
- TalkshowPlayer = -1;
- return true;
- }
- CMD:denycaller(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(TalkshowHost == -1) return SysMsg(playerid, "Não há shows de entrevistas ao vivo no momento.");
- new callernumber;
- if(sscanf(params, "i", callernumber)) return SysMsg(playerid, "Use: /acceptcaller [Chamador do ID /chamarers]");
- if(callernumber < 0 && callernumber > sizeof(TalkshowCallers)) return SysMsgF(playerid, "Chamador ID deve ser maior que 0 e menos de %i", sizeof(TalkshowCallers));
- if(TalkshowCallers[callernumber - 1] == -1) return SendClientMessageF(playerid, COLOR_PINK, "Não há ninguém online %i", callernumber + 1);
- SendClientMessageF(playerid, COLOR_PINK, "Você negou a chamada de %s.", NameEx(TalkshowCallers[callernumber - 1]));
- TalkshowCallers[callernumber - 1] = -1;
- return true;
- }
- CMD:toglines(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você deve ser membro da News Corp.");
- if(FactionRank[playerid] < 2) return SysMsg(playerid,"Você deve ser pelo menos o ranking 2 to use this.");
- if(Duty[playerid] == 0) return SysMsg(playerid,"Você deve estar de serviço para usar isso.");
- if(TalkshowHost == -1) return SysMsg(playerid, "Não há talk shows ao vivo no momento.");
- SANCallers = !SANCallers;
- if(SANCallers) SendClientMessage(playerid, COLOR_PINK, "Você abriu as linhas de chamadas da SAN.");
- else SendClientMessage(playerid, COLOR_PINK, "Você fechou as linhas de chamadas da SAN.");
- return true;
- }
- CMD:tchat(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(TalkshowPlayer != playerid && TalkshowHost != playerid) return SysMsg(playerid, "Você não está em um programa de entrevistas.");
- if(isnull(params)) return SysMsg(playerid, "Use: /tchat [mensagem]");
- NewsToggle{playerid} = true;
- foreach(new i: Player)
- {
- if(Logged{i} && NewsToggle{i})
- {
- if(TalkshowHost == playerid) SendSplitMessageF(i, COLOR_PINK, "[TALK SHOW] Hospedeiro %s: %s", NameEx(playerid), params);
- else if(TalkshowPlayer == playerid) SendSplitMessageF(i, COLOR_PINK, "[TALK SHOW] Chamador %s: %s", NameEx(playerid), params);
- }
- }
- return true;
- }
- //==================== Fim ==================================//
- //5 Silver Trading
- //Silver Trading
- CMD:properties(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid,7.5,1325.923950,183.807281,1858.25976) && Faction[playerid] != FACTION_PROP) return SysMsg(playerid,"Você deve estar nos escritórios Silver Trading para usar esse comando.");
- Dialog_Show(playerid, STPropertiesMenu, DIALOG_STYLE_LIST, "Selecionar tipo de lista", "Veja Silver Trading Properties\nVer casas livre", "Selecionar", "Cancelar");
- return true;
- }
- CMD:addp(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
- new idx = 0, forsale, price;
- if(sscanf(params, "ii", forsale, price)) return SysMsg(playerid,"Use: /addp [à venda? 0/1/2] [$preço]");
- if(forsale < 0 || forsale > 2) return SysMsg(playerid,"O parâmetro de venda deve ser 1(não), 2(sim), ou 0(escondido de /properties).");
- if(price < 1 || price > 100000000) return SysMsg(playerid,"parâmetro de preço deve estar entre 1 e 100,000,000.");
- for(idx = 0; idx < MAX_HOUSES; idx++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 0.75, HouseData[idx][oPosX], HouseData[idx][oPosY], HouseData[idx][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[idx][HouseExtVW])
- {
- HouseData[idx][HouseOwnerSQLID] = -5;
- MySQLUpdateInt(HouseData[idx][HouseSQLID], "OwnerSQLID", -5, "houses");
- if(forsale != 0)
- {
- mysql_format(conn, mquery, sizeof(mquery), "REPLACE INTO traders (Type, ForSale, Price, SQLID, Description) VALUES (1, %i, %i, %i, '%e')", forsale - 1, price, HouseData[idx][HouseSQLID], HouseData[idx][HouseDescription]);
- mysql_pquery(conn, mquery);
- }
- SendClientMessageF(playerid, COLOR_WHITE, "A casa '%s' agora está em Silver Trading por $%i", HouseData[idx][HouseDescription], price);
- return true;
- }
- }
- for(idx = 0; idx < MAX_BIZZ; idx++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 0.75, BizzData[idx][oPosX], BizzData[idx][oPosY], BizzData[idx][oPosZ]))
- {
- BizzData[idx][BizzOwnerSQLID] = -5;
- MySQLUpdateInt(BizzData[idx][BizzSQLID], "OwnerSQLID", -5, "bizz");
- if(forsale != 0)
- {
- mysql_format(conn, mquery, sizeof(mquery), "REPLACE INTO traders (Type, ForSale, Price, SQLID, Description) VALUES (2, %i, %i, %i, '%e')", forsale - 1, price, BizzData[idx][BizzSQLID], BizzData[idx][BizzDescription]);
- mysql_pquery(conn, mquery);
- }
- SendClientMessageF(playerid, COLOR_WHITE, "A empresa '%s' agora está em Silver Trading por $%i", BizzData[idx][BizzDescription], price);
- return true;
- }
- }
- return true;
- }
- CMD:getprop(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
- new idx;
- for(idx = 0; idx < MAX_HOUSES; idx++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 0.75, HouseData[idx][oPosX], HouseData[idx][oPosY], HouseData[idx][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[idx][HouseExtVW] && HouseData[idx][HouseOwnerSQLID] == -5)
- {
- HouseData[idx][HouseOwnerSQLID] = SQLID[playerid];
- MySQLUpdateInt(HouseData[idx][HouseSQLID], "OwnerSQLID", SQLID[playerid], "houses");
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM traders WHERE SQLID=%i AND Type=1", HouseData[idx][HouseSQLID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr), "A casa '%s' agora é sua.", HouseData[idx][HouseDescription]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- return true;
- }
- }
- for(idx = 0; idx < MAX_BIZZ; idx++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 0.75, BizzData[idx][oPosX], BizzData[idx][oPosY], BizzData[idx][oPosZ]) && BizzData[idx][BizzOwnerSQLID] == -5)
- {
- BizzData[idx][BizzOwnerSQLID] = SQLID[playerid];
- MySQLUpdateInt(BizzData[idx][BizzSQLID], "OwnerSQLID", SQLID[playerid], "bizz");
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM traders WHERE SQLID=%i AND Type=2", BizzData[idx][BizzSQLID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr), "A empresa '%s' agora é sua.", BizzData[idx][BizzDescription]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- return true;
- }
- }
- return true;
- }
- CMD:lockbizzes(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
- new toggle = 0;
- if(sscanf(params, "i", toggle)) return SysMsg(playerid, "Use: /fecharbizzes [0 para desbloquear, 1 para bloqueio]");
- if(toggle != 0 && toggle != 1) return cmd_lockbizzes(playerid, "");
- for(new b = MAX_BIZZ; b != 0; b--)
- {
- if(BizzData[b][BizzOwnerSQLID] == -5)
- {
- if(toggle == 0)
- {
- if(BizzData[b][BizzLocked])
- {
- BizzData[b][BizzLocked] = false;
- }
- }
- else
- {
- if(!BizzData[b][BizzLocked])
- {
- BizzData[b][BizzLocked] = true;
- }
- }
- }
- }
- if(toggle == 1) SysMsg(playerid, "Todos os negócios Silver Trading estam bloqueados.");
- else SysMsg(playerid, "Todos os negócios da Silver Trading foram desbloqueados.");
- return true;
- }
- CMD:lockhouses(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
- new toggle = 0, idx;
- if(sscanf(params, "i", toggle)) return SysMsg(playerid, "Use: /lockhouses [0 para desbloquear, 1 para bloqueio]");
- if(toggle == 0)
- {
- for(idx = 0; idx < MAX_HOUSES; idx++)
- {
- if(HouseData[idx][HouseOwnerSQLID] == -5)
- {
- HouseData[idx][HouseLocked] = 0;
- MySQLUpdateInt(HouseData[idx][HouseSQLID], "HouseLocked", HouseData[idx][HouseLocked], "houses");
- }
- }
- SysMsg(playerid, "Todas as casas Silver Trading foram desbloqueadas.");
- toggle = 1;
- }
- else
- {
- for(idx = 0; idx < MAX_HOUSES; idx++)
- {
- if(HouseData[idx][HouseOwnerSQLID] == -5)
- {
- HouseData[idx][HouseLocked] = 1;
- MySQLUpdateInt(HouseData[idx][HouseSQLID], "HouseLocked", HouseData[idx][HouseLocked], "houses");
- }
- }
- SysMsg(playerid, "Todas as casas Silver Trading foram bloqueadas.");
- toggle = 0;
- }
- return true;
- }
- //==================== Fim ==================================//
- //6 General government faction commands (sasp, ap, fd, etc)
- //General government faction commands (sasp, ap, fd, etc)
- CMD:beanbag(playerid, params[])//bala de borracha
- {
- if(IsPlayerAdmin(playerid) || IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH)
- {
- if(GetPlayerWeapon(playerid) != 25) return SysMsg(playerid, "Você deve estar segurando uma shotgun para usar isso.");
- HasRubberBullets{playerid} = !HasRubberBullets{playerid};
- if(HasRubberBullets{playerid}) SendClientMessage(playerid, COLOR_YELLOW, "Bala de borracha ativada.");
- else SendClientMessage(playerid, COLOR_YELLOW, "Bala de borracha desativada.");
- }
- else return SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:cuff(playerid, params[])//algemar
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH)
- {
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /algemar [Identificação ou parte do nome ou ID do Estrangeiro]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsCuffed[playa] == 1) return SysMsg(playerid,"Esse jogador já está algemado.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode se algemar.");
- if(ADuty[playa] == 1) return SysMsg(playerid, "Você não pode prender um admin em serviço.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador algema-los.");
- IsCuffed[playa] = 1;
- SetPlayerToFacePlayer(playerid, playa);
- OnePlayAnim(playerid, "BD_FIRE", "wash_up", 4.0, 0, 0, 0, 0, 0);
- SetPlayerSpecialAction(playa, SPECIAL_ACTION_CUFFED);
- if(AttachedObjects[playa][6][aoModelID] != 0)
- {
- RemovePlayerAttachedObject(playa, 6);
- }
- AttachedObjects[playa][6][aoModelID] = 19415;
- AttachedObjects[playa][6][aoBone] = 6;
- SetPlayerAttachedObject(playa, 6, 19418, 6, -0.011, 0.028, -0.022, -15.600012, -33.699977, -81.700035, 1.0, 1.0, 1.0);
- SendClientMessageF(playa, COLOR_RED, "%s te algemou.",NameRP(playerid));
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "Você algemou %s.",NameEx(playa));
- format(gstr, sizeof(gstr),"* %s colocou algemas em %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else return SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:uncuff(playerid, params[])//desalgemar
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH || IsPlayerAdminLevelOK(playerid, 1))
- {
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /uncuff [Identificação ou parte do nome ou ID do Estrangeiro]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(playa == playerid && !IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid,"Você não pode retira as algemas de si mesmo.");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsCuffed[playa] == 0) return SysMsg(playerid,"Esse jogador não está algemado.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para retirar a algemas dele(a).");
- IsCuffed[playa] = 0;
- SetPlayerSpecialAction(playa, SPECIAL_ACTION_NONE);
- RemovePlayerAttachedObject(playa, 6);
- if(PlayerToBeDetained[playerid] == playa)
- {
- PlayerToBeDetained[playerid] = -1;
- PlayerToBeDetainedSeat[playerid] = -1;
- }
- SendClientMessageF(playa,COLOR_RED, "%s removeu suas algemas.",NameRP(playerid));
- SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Você removeu as algemas de %s.",NameEx(playa));
- format(gstr, sizeof(gstr),"* %s remove as algemas das mãos %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else return SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:taser(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH || IsPlayerAdmin(playerid))
- {
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você não pode usar a Taser enquanto estiver em um veículo.");
- HasTaser{playerid} = !HasTaser{playerid};
- new slot = GetWeaponSlot(24), weps, ammo;
- GetPlayerWeaponData(playerid, slot, weps, ammo);
- PauseAC(playerid);
- if(HasTaser{playerid})
- {
- format(gstr, sizeof(gstr),"* %s pega um teaser em seu coldre. *", NameRP(playerid));
- if(weps != WEAPON_SILENCED) GivePlayerWeapon(playerid, WEAPON_SILENCED, 5);
- if(weps != 0)
- {
- PreTaserWeapon[playerid] = weps;
- PreTaserAmmo[playerid] = ammo;
- WeaponData[playerid][slot][Weapon] = WEAPON_SILENCED;
- }
- }
- else
- {
- format(gstr, sizeof(gstr)," *%s coloca o taser de volta ao coldre. *", NameRP(playerid));
- if(PreTaserWeapon[playerid] != 0)
- {
- if(PreTaserWeapon[playerid] != WEAPON_SILENCED) GivePlayerWeapon(playerid, PreTaserWeapon[playerid], PreTaserAmmo[playerid]);
- WeaponData[playerid][slot][Weapon] = PreTaserWeapon[playerid];
- WeaponData[playerid][slot][WeaponAmmo] = PreTaserAmmo[playerid];
- PreTaserWeapon[playerid] = 0;
- PreTaserAmmo[playerid] = 0;
- }
- else
- {
- ResetWeaponVariables(playerid, 0, slot);
- SyncPlayerWeapons(playerid);
- PreTaserWeapon[playerid] = 0;
- PreTaserAmmo[playerid] = 0;
- }
- }
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else return SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:laser(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid) && Faction[playerid] != FACTION_RESEARCH) return SysMsg(playerid,"Você não é capaz de usar o laser");
- if(GetPlayerWeapon(playerid) != 23 && GetPlayerWeapon(playerid) != 31) return SysMsg(playerid,"Você não possui a arma correta para usar o laser");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar este comando enquanto algemado.");
- if(CallerID[playerid] >= 1) return SysMsg(playerid, "Você não pode anexar um laser enquanto você está no telefone.");
- if(!HasLaser{playerid})
- {
- SendClientMessage(playerid, 0xFFFFFFFF, "O seu laser está agora ligado à sua arma..");
- OnePlayAnim(playerid,"RIFLE","RIFLE_load",4,0,0,0,0,0);
- HasLaser{playerid} = true;
- }
- else
- {
- SendClientMessage(playerid, 0xFFFFFFFF, "Seu laser foi removido de sua arma.");
- OnePlayAnim(playerid,"RIFLE","RIFLE_load",4,0,0,0,0,0);
- HasLaser{playerid} = false;
- RemovePlayerAttachedObject(playerid,6);
- }
- return true;
- }
- CMD:removemask(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || IsPlayerAdminLevelOK(playerid, 1))
- {
- new Float:ClosestDistance = 99999.99, Float:tmpDistance, ClosestPlayer = -1;
- new Float:x1, Float:y1, Float:z1;
- GetPlayerPos(playerid, x1, y1, z1);
- foreach(new x: Player)
- {
- if(x != playerid && IsSpectating[x] == -1 && IsPlayerMasked{x} && MaskHideName{x})
- {
- new Float:x3, Float:y3, Float:z3;
- GetPlayerPos(x, x3, y3, z3);
- tmpDistance = floatsqroot(floatpower(floatabs(floatsub(x3, x1)), 2) + floatpower(floatabs(floatsub(y3, y1)), 2) + floatpower(floatabs(floatsub(z3, z1)) ,2));
- if(tmpDistance < ClosestDistance)
- {
- ClosestDistance = tmpDistance;
- ClosestPlayer = x;
- }
- }
- }
- if(ClosestDistance > 10.0) return SysMsg(playerid,"Você não está perto de ninguém mascarado.");
- new RandomHit = random(4);
- if(RandomHit == 0)
- {
- format(gstr, sizeof(gstr),"* %s tenta remover a mascara do jogador próximo e falha. *",NameEx(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- format(gstr, sizeof(gstr),"* %s remove a mascara de uma pessoa próxima. *",NameEx(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- foreach(new i: Player)
- {
- if(ClosestPlayer != i) ShowPlayerNameTagForPlayer(i, ClosestPlayer, 1);
- }
- IsPlayerMasked{ClosestPlayer} = false;
- MaskHideName{ClosestPlayer} = false;
- DeleteMaskLabel(ClosestPlayer);
- MaskLabelNumber[ClosestPlayer] = 0;
- SendClientMessage(ClosestPlayer, COLOR_LIGHTRED, "Sua máscara foi removida.");
- return true;
- }
- else SysMsg(playerid,"Você precisa ser um membro da polícia.");
- return true;
- }
- CMD:detain(playerid, params[])//deter
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid))
- {
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SysMsg(playerid,"Você deve estar a pé para deter alguém.");
- if(PlayerToBeDetained[playerid] != -1) return SysMsg(playerid,"Você só pode ter uma pessoa detida ao mesmo tempo, coloque o detido na unidade.");
- new playa = -1, seatid, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]i", name, seatid)) return SysMsg(playerid,"Use: /detain [Identificação ou parte do nome ou ID do Estrangeiro] [ID do assento] *Dica: 1, 2 & 3 São assentos de passageiros*");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode usar esse comando em si mesmo.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsCuffed[playa] == 0) return SysMsg(playerid,"Esse jogador não está algemado. Por favor, use: /cuff primeiro.");
- if(seatid < 1 || seatid > 4) return SysMsg(playerid,"A identificação do assento inválido.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,6.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para detê-lo.");
- format(gstr, sizeof(gstr),"* Oficial %s detém %s. *",NameEx(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você deteu %s. Ele(a) serão colocados no id do assento %i do seu próximo carro.",NameEx(playa),seatid);
- SendClientMessage(playerid,COLOR_BLUE,gstr);
- PlayerToBeDetained[playerid] = playa;
- PlayerToBeDetainedSeat[playerid] = seatid;
- TogglePlayerControllable(playa,0);
- LoopingAnim(playa,"WUZI","CS_Dead_Guy", 3.0,0,0,0,0,0);
- }
- else SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:mdc(playerid)
- {
- if((IsPlayerAdmin(playerid)) || Faction[playerid] == FACTION_COP || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- if(CanUseMDC(playerid))
- {
- PlayerPlayNearbySound(playerid, MDC_OPEN);
- if(Faction[playerid] == FACTION_COP || (IsPlayerAdmin(playerid)) || Faction[playerid] == FACTION_RESEARCH) Dialog_Show(playerid, MDC_Home, DIALOG_STYLE_LIST, "MDC - Painel", "Pesquisa por nome\nBuscar Placa\nBoletim de todos os pontos\nChamadas recentes do 911", "Selecione", "Sair");
- else Dialog_Show(playerid, MDC_Home, DIALOG_STYLE_LIST, "MDC - Painel", "Chamadas recentes do 911\nSolicitar backup", "Selecione", "Sair");
- SetPlayerChatBubble(playerid, "* Logs into the Mobile Data Computer *", COLOR_EMOTE, 15, 10000);
- }
- else return SysMsg(playerid,"Você só pode usar no computador da sua facção ou veiculos equipados com MDC.");
- }
- else return SysMsg(playerid, "Você precisa ser um membro de uma facção do governo para usar este comando.");
- return true;
- }
- CMD:forcein(playerid, params[])//puxa de dentro do veiculo
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você deve ser um motorista para forçar um jogador dentro.");
- new playa = -1, seatid, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]i", name, seatid)) return SysMsg(playerid,"Use: /forcein [Identificação ou parte do nome ou ID do Estrangeiro] [seat id] *Dica: 1, 2 & 3 São assentos de passageiros*");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode forçar você mesmo.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsCuffed[playa] == 0) return SysMsg(playerid,"Esse jogador não está algemado. Por favor, use: /cuff primeiro.");
- if(seatid < 1 || seatid > 4) return SysMsg(playerid,"O ID do assento inválido.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,6.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para forçá-los.");
- format(gstr, sizeof(gstr),"* O oficial %s puxa %s de dentro do veiculo. *",NameEx(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- PutPlayerInVehicle(playa, GetPlayerVehicleID(playerid), seatid);
- return true;
- }
- CMD:take(playerid, params[]) //pegar
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH || IsPlayerAdminLevelOK(playerid, 1))
- {
- new playa = -1, object[10], itemAmount = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]s[10]I(-1)", name, object, itemAmount)) return SysMsg(playerid,"Use: /take [Identificação ou parte do nome ou ID do Estrangeiro] [arma/marijuana/cocaina/moonshine/maleta] [quantidade (se necessário)]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- new Float:tX, Float:tY, Float:tZ;
- GetPlayerPos(playa, tX, tY, tZ);
- if(!IsPlayerInRangeOfPoint(playerid, 5.5, tX, tY, tZ)) return SysMsg(playerid,"Você deve estar perto do jogador.");
- if(strcmp("arma", object, true) == 0)
- {
- new wCount = 0;
- for(new i = 0; i < MAX_TOTAL_WEAPONS; i++)
- {
- if(WeaponData[playa][i][Weapon] > 0)
- {
- new substr[50];
- if(wCount == 0) format(gstr, sizeof(gstr), GetWeaponNameFromID(WeaponData[playa][i][Weapon]));
- else
- {
- format(substr, 50, "\n%s", GetWeaponNameFromID(WeaponData[playa][i][Weapon]));
- strcat(gstr, substr);
- }
- wCount ++;
- }
- }
- if(wCount == 0)
- {
- SysMsg(playerid,"Esse jogador não tem armas..");
- return true;
- }
- else
- {
- if(wCount > 1) strcat(gstr, "\nPegue todas as armas");
- TakeGunPlayer[playerid] = playa;
- new caption[128];
- format(caption, 128, "Pegue uma arma de %s:", NameRP(playa)),
- Dialog_Show(playerid, WeaponTake, DIALOG_STYLE_LIST, caption, gstr, "Pegar", "Cancelar");
- }
- return true;
- }
- if(strcmp("marijuana", object, true) == 0)
- {
- if(itemAmount == -1) return SysMsg(playerid,"Use: /take [ID ou nome do jogador] marijuana [Quantidade]");
- if(itemAmount < 1 || itemAmount > Inventory[playa][Weed]) return SysMsg(playerid,"Quantidade Inválida, deve ser 1 a quantidade de marijuana que o jogador tem (/revistar).");
- Inventory[playa][Weed] -= itemAmount;
- MySQLUpdateInt(SQLID[playa], "Weed", Inventory[playa][Weed], "players");
- format(gstr, sizeof(gstr),"* %s toma algumas drogas de %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s tomou %i grama(s) de marijuana de você.", NameRP(playerid), itemAmount);
- SendClientMessage(playa, COLOR_ORANGE, gstr);
- format(gstr, sizeof(gstr),"Você pegou %i grama(s) de marijuana de %s.", itemAmount, NameRP(playa));
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- return true;
- }
- if(strcmp("Cocaina", object, true) == 0)
- {
- if(itemAmount == -1) return SysMsg(playerid,"Use: /take [ID ou nome do jogador] Cocaina [Quantidade]");
- if(itemAmount < 1 || itemAmount > Inventory[playa][Cocaine]) return SysMsg(playerid,"Quantidade Inválida, deve ser 1 a quantidade de cocaina que o jogador tem (/revistar).");
- Inventory[playa][Cocaine] -= itemAmount;
- MySQLUpdateInt(SQLID[playa], "Cocaine", Inventory[playa][Cocaine], "players");
- format(gstr, sizeof(gstr),"* %s toma algumas drogas de %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s tomou %i grama(s) de cocaina de você.", NameRP(playerid), itemAmount);
- SendClientMessage(playa, COLOR_ORANGE, gstr);
- format(gstr, sizeof(gstr),"Você pegou %i grama(s) de cocaine de %s.", itemAmount, NameRP(playa));
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- return true;
- }
- if(strcmp("MoonShine", object, true) == 0)
- {
- if(itemAmount == -1) return SysMsg(playerid,"Use: /take [ID ou nome do jogador] MoonShine [Quantidade]");
- if(itemAmount < 1 || itemAmount > Inventory[playa][MoonShine]) return SysMsg(playerid,"Quantidade Inválida, deve ser 1 a quantidade de MoonShine que o jogador tem (/revistar).");
- Inventory[playa][MoonShine] -= itemAmount;
- MySQLUpdateInt(SQLID[playa], "MoonShine", Inventory[playa][MoonShine], "players");
- format(gstr, sizeof(gstr),"* %s toma algumas drogas de %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s tomou %i litro(s) de Moon Shine de você.", NameRP(playerid), itemAmount);
- SendClientMessage(playa, COLOR_ORANGE, gstr);
- format(gstr, sizeof(gstr),"Você pegou %i litro(s) de Moon Shine de %s.", itemAmount, NameRP(playa));
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- return true;
- }
- if(strcmp("maleta", object, true) == 0)
- {
- if(Inventory[playa][Briefcase] == 0) return SysMsg(playerid, "Esse jogador não tem uma maleta.");
- Inventory[playa][Briefcase] = 0;
- BriefcaseWeapon[playa] = 0;
- BriefcaseCash[playa] = 0;
- BriefcaseLocked[playa] = 0;
- BriefcaseCode[playa] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasBriefcase = 0, BriefcaseWeapon = 0, BriefcaseCash = 0, BriefcaseWeed = 0, BriefcaseCocaine = 0, BriefcaseCode = 0, BriefcaseLocked = 0 WHERE id = %i", SQLID[playa]);
- mysql_pquery(conn, mquery);
- if(BriefcaseHolding[playa] > 0)
- {
- BriefcaseHolding[playa] = 0;
- RemovePlayerAttachedObject(playa, HOLD_OBJECT_BRIEFCASE);
- }
- format(gstr, sizeof(gstr),"* %s pega a maleta de %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s pegou sua maleta e seus conteúdos.", NameRP(playerid));
- SendClientMessage(playa, COLOR_ORANGE, gstr);
- format(gstr, sizeof(gstr),"Você pegou a maleta de %s e todos os conteúdos contido dentro dela.", NameRP(playa));
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- return true;
- }
- }
- else SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:siren(playerid, params[])//adicionar sirene
- {
- if(!Logged{playerid}) return true;
- new vehicleid = GetPlayerVehicleID(playerid);
- if(vehicleid == 0) return SysMsg(playerid,"Você precisa estar em um veiculo de facção.");
- if(IsFactionVehicle(vehicleid) != Faction[playerid]) return SysMsg(playerid,"Você precisa estar em um veiculo de facção.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER && (GetPlayerVehicleSeat(playerid) != 1 && GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)) return SysMsg(playerid,"Você precisa estar no acento de condução or front passenger.");
- new modelid = GetVehicleModel(vehicleid);
- if(!Siren{vehicleid})
- {
- if(VehObject[vehicleid] != INVALID_OBJECT_ID) return SysMsg(playerid, "Este veículo já tem um objeto anexado a ele.");
- if(IsCop(playerid))
- {
- switch(modelid)
- {
- case 596: //LSPD
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, -1.75, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 598: //LVPD
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, -1.5, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 490: //FBI RANCH
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.5, 0.5, 1.15, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 560: //SULTAN
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.45, 0.25, 0.85, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 426: //PREMIER
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.45, 0.0, 0.875, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 541: //Bullet
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.6, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 411: //Infernus
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.98, 0.24, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 402: //buffalo
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.55, 0.3, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 579: //buffalo
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.6, 0.6, -10.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 413: //PONY
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.65, 1.2, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 597: //SFPD
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, -1.75, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 415: //CHEETAH
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.65, 0.2, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 445: //admiral
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.004999, 0.739999, 0.309999, 0.000000, 0.000000, 0.000000);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 421: //Washington
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.000000, 0.799999, 0.239999, 0.000000, 0.000000, 0.000000);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 599: //Police Ranger
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.65, 0.5, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 427: //Enforcer
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 1.655, 0.7, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 405: //Sentinel
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.7, 0.25, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 482: //Burrito
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.5, 0.6, 0.95, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 457: //Caddy
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.3, 0.3, 1.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 470: //Patriot
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.75, 0.2, 1.13, 0, 0, 0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 525: //Towtruck
- {
- VehObject[vehicleid] = CreateVehicleObject(19803, vehicleid, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- default: SysMsg(playerid,"Este veículo não pode ter uma sirene.");
- }
- }
- else if(Faction[playerid] == FACTION_SACFD)
- {
- switch(modelid)
- {
- case 407: //FireTruck
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.0,-3.01,1.350000,0.0,0.0,0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 544: //FireTruck LA (Ladder)
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0,2.850001,1.500000,0.0,0.0,0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 416: // Ambulance
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0,-3.525001,1.350000,0.0,0.0,0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 525: // Towtruck
- {
- VehObject[vehicleid] = CreateVehicleObject(19803, vehicleid, 0.0,-0.449999,1.425000,0.0,0.0,0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 433: // Barracks
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0,1.275000,1.725000,0.0,0.0,0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 552: //Utility
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.65, 1.375, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 554: //Yosemite
- {
- VehObject[vehicleid] = CreateVehicleObject(19419, vehicleid, 0.0, 0.0, 1.049999, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 427: //Enforcer
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 1.655, 0.7, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 490: //FBI RANCH
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.5, 0.5, 1.15, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 597: //SFPD
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, -1.75, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- default: SysMsg(playerid,"Este veículo não pode ter uma sirene.");
- }
- }
- else if(Faction[playerid] == FACTION_RESEARCH)
- {
- switch(modelid)
- {
- case 596: //LSPD
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, -1.75, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 598: //LVPD
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, -1.5, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 560: //SULTAN
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.45, 0.25, 0.85, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 426: //PREMIER
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.45, 0.0, 0.875, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 541: //Bullet
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.6, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 411: //Infernus
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.98, 0.24, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 482: //burrito
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.0, 0.995, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 402: //buffalo
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.55, 0.3, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 579: //buffalo
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.6, 0.6, -10.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 413: //PONY
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.65, 1.2, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 597: //SFPD
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, -1.75, 0.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 415: //CHEETAH
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.65, 0.2, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 428: //securi
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.65, 1.35, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 405: //SENTINEL
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.75, 0.25, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 421: //WASHINTON
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0.0, 0.9, 0.225, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 490: //FBI RANCH
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.5, 0.5, 1.15, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 470: //Patriot
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.75, 0.2, 1.13, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 433: //Barracks
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.65, 015, 1.74, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 429: //Banshee
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.5, -1.27, 0.6, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 424: //BF Injection
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.64, 0.16, 0.92, -10.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 582: //Newsvan
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, -0.7, 1.05, 1.18, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 503: //hotrin
- {
- VehObject[vehicleid] = CreateVehicleObject(18646, vehicleid, 0, 0.75, 0.45, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- case 525: //Towtruck
- {
- VehObject[vehicleid] = CreateVehicleObject(19803, vehicleid, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {4BB74C}Adicionada{FFFFFF}. Warning: Isso pode não ser exibido corretamente se você tiver um mods de veiculos intalados.");
- }
- default: SysMsg(playerid,"Este veículo não pode ter uma sirene.");
- }
- }
- else return SysMsg(playerid, "Esta facção não tem este recurso.");
- Siren{vehicleid} = true;
- }
- else
- {
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- if(VehObject[vehicleid] != INVALID_OBJECT_ID && Siren{vehicleid})
- {
- if(Faction[playerid] == FACTION_SACFD && GetVehicleModel(vehicleid) == 554)
- {
- DestroyDynamicObjectEx(VehObject[vehicleid], "VehObject[vehicleid] 4");
- VehObject[vehicleid] = CreateVehicleObject(19420, vehicleid, 0.0, 0.0, 1.049999, 0.0, 0.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {8B0000}Off");
- }
- else
- {
- DestroyDynamicObjectEx(VehObject[vehicleid], "VehObject[vehicleid] 5");
- VehObject[vehicleid] = INVALID_OBJECT_ID;
- SendClientMessage(playerid, COLOR_WHITE, "> Sirene {8B0000}Deparada");
- }
- Siren{vehicleid} = false;
- }
- }
- }
- return true;
- }
- CMD:viewmyimpounds(playerid, params[])//ver veiculos apreendidos
- {
- if(!Logged{playerid}) return true;
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você não pode coletar um veículo imobilizado enquanto estiver dentro de um.");
- if(!IsPlayerInRangeOfPoint(playerid, 3.0, 619.476257, -592.645996, 17.233013)) return SysMsg(playerid,"Você precisa estar na garagem do depósito. (Dillimore).");
- new sub[300], count;
- gstr[0] = EOS;
- for(new v = 0, x = MAX_VEHICLES; v < x; v++)
- {
- if(ImpoundData[v][iModel] > 399)
- {
- if(ImpoundData[v][iOwnerSQLID] == SQLID[playerid] || ImpoundData[v][iFaction] == Faction[playerid] && Faction[playerid] != 0)
- {
- if(ImpoundData[v][iImpoundTime] > 0) format(sub, 100, "%s - %i minutos restantes - $%i taxa de liberação - Razão: '%s'\n", GetVehicleNameEx(ImpoundData[v][iModel]), ImpoundData[v][iImpoundTime], ImpoundData[v][iImpoundFee], ImpoundData[v][iImpoundReason]);
- else format(sub, 100, "%s - $%i taxa de liberação - Razão: '%s'\n", GetVehicleNameEx(ImpoundData[v][iModel]), ImpoundData[v][iImpoundFee], ImpoundData[v][iImpoundReason]);
- strcat(gstr, sub);
- ClothingSelected[playerid][count] = v;
- count ++;
- }
- }
- }
- if(count == 0) return SysMsg(playerid,"Você não tem veículos confiscados.");
- Dialog_Show(playerid, MyImpounds, DIALOG_STYLE_LIST, "Meus veículos apreendidos", gstr, "Desaprender", "Sair");
- return true;
- }
- CMD:payparkingticket(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new vehicleid = GetPlayerVehicleID(playerid);
- if(vehicleid == 0) return SysMsg(playerid, "Você deve estar no seu veículo.");
- if(VehicleData[vehicleid][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Você deve estar no seu veículo.");
- if(VehicleData[vehicleid][TicketAmount] == 0) return SysMsg(playerid, "Este veículo não tem ticket de estacionamento para pagar.");
- if(Cash[playerid] < VehicleData[vehicleid][TicketAmount]) return SysMsg(playerid, "Você não tem dinheiro suficiente para pagar este ticket.");
- GivePlayerCash(playerid, -VehicleData[vehicleid][TicketAmount]);
- format(gstr, sizeof(gstr),"Você pagou o ticket de estacionamento de $%i do seu %s.", VehicleData[vehicleid][TicketAmount], GetVehicleName(vehicleid));
- SendClientMessage(playerid,COLOR_LIGHTBLUE,gstr);
- FACTIONS[FACTION_COP][FactionBankBalance] += floatround(0.4 * VehicleData[vehicleid][TicketAmount]);
- MySQLUpdateInt(FACTION_COP, "BankBalance", FACTIONS[FACTION_COP][FactionBankBalance], "factions");
- format(gstr, sizeof(gstr),"%s pagou o seu ticket de estacionamento de $%i. Uma porcentagem do dinheiro foi adicionada ao banco da facção.", NameEx(playerid), VehicleData[vehicleid][TicketAmount]);
- PoliceMessage(gstr);
- VehicleData[vehicleid][TicketAmount] = 0;
- MySQLUpdateInt(VehicleData[vehicleid][VehSQLID], "TicketAmount", 0, "vehicles");
- return true;
- }
- CMD:psa(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- if(Faction[playerid] == FACTION_RESEARCH && FactionRank[playerid] < 8) return SysMsg(playerid,"Você precisa ser o Rank 8+ para enviar um Aperture PSA.");
- if(Faction[playerid] == FACTION_SACFD && !IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um rank apropriado para usar este comando to send an SACFD PSA.");
- if(IsCop(playerid) && !IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um rank apropriado para usar este comando to send an SASP PSA.");
- if(isnull(params)) return SysMsg(playerid,"Use: /psa [mensagem]");
- new psa[196];
- format(psa, sizeof(psa), "PSA de %s %s: %s", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), params);
- SendClientMessageToAllLogged(COLOR_BLUE, psa);
- }
- return true;
- }
- CMD:pan(playerid, params[])//auto falante da prisão
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_COP)
- {
- new tannoy2[196], loc[12];
- if(!IsPlayerInRangeOfPoint(playerid, 2.0, -1337.6696, -48.7392, 17.7579)) return SysMsg(playerid,"Você deve estar na sala de controle para usar o tannoy.");
- if(sscanf(params, "s[12]s[196]", loc, tannoy2)) return SysMsg(playerid,"Use: /pan [dentro/fora/ambos] [mensagem]");
- if(strcmp("dentro", loc, true) == 0)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && GetPlayerInterior(i) == 6 && GetPlayerVirtualWorld(i) == 6164)
- {
- SendClientMessageF(i, 0x3DAD2FFF, "Prisão - Microfone o< %s", tannoy2);
- }
- }
- }
- if(strcmp("fora", loc, true) == 0)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && IsPlayerInRangeOfPoint(i, 75.0, 173.2664, 1412.5975, 31.3242))
- {
- SendClientMessageF(i, 0x3DAD2FFF, "Prisão - Microfone o< %s", tannoy2);
- }
- }
- }
- if(strcmp("ambos", loc, true) == 0)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && ((GetPlayerInterior(i) == 6 && GetPlayerVirtualWorld(i) == 6164) || IsPlayerInRangeOfPoint(i, 75.0, 173.2664,1412.5975,31.3242)))
- {
- SendClientMessageF(i, 0x3DAD2FFF, "Prisão - Microfone o< %s", tannoy2);
- }
- }
- }
- }
- else return SysMsg(playerid,"Você precisa ser um membro do SASP para usar esse comando.");
- return true;
- }
- CMD:lockdown(playerid, params[])//fecha celar = toda prisão
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_COP) return SysMsg(playerid, "Você deve ser um membro do SASP.");
- new cellstr[64];
- if(!IsPlayerInRangeOfPoint(playerid, 2.0, -1337.6696, -48.7392, 17.7579)) return SysMsg(playerid, "Você deve estar no microfone da prisão para começar um bloqueio");
- {
- if(PrisonLockdown == 0)
- {
- PrisonLockdown = 1;
- foreach(new i: Player) if(Logged{i} && IsInPrison(i) || IsPlayerInRangeOfPoint(i, 75.0, -694.249816, 456.985992, 5.0055)) SendClientMessage(i, 0x3DAD2FFF, "Prisão - Microfoneo< A prisão está agora sob bloqueio!");
- for(new w = 0; w < sizeof(PrisonDoorsLock); w++) PrisonDoorsLock[w] = 1;
- for(new p = 0; p < 16; p++)
- {
- PrisonCellsLock[p] = 1;
- format(cellstr, sizeof(cellstr), "Celas %i\nFechadas", p+1);
- DestroyDynamic3DTextLabel(PrisonCellsText[p]);
- PrisonCellsText[p] = Text3D:INVALID_3DTEXT_ID;
- PrisonCellsText[p] = CreateDynamic3DTextLabel(cellstr, COLOR_WHITE, PrisonCellsOut[p][0], PrisonCellsOut[p][1], PrisonCellsOut[p][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, 6164, -1, -1, 5);
- }
- }
- else if(PrisonLockdown == 1)
- {
- PrisonLockdown = 0;
- foreach(new i: Player) if(Logged{i} && IsInPrison(i) || IsPlayerInRangeOfPoint(i, 75.0, -694.249816, 456.985992, 5.0055)) SendClientMessage(i, 0x3DAD2FFF, "Prisão - Microfoneo< A prisão não está mais bloqueada. Volte para suas atividades regulares.");
- for(new w = 0; w < sizeof(PrisonDoorsLock); w++) PrisonDoorsLock[w] = 0;
- for(new p = 0; p < 16; p++)
- {
- PrisonCellsLock[p] = 0;
- format(cellstr, sizeof(cellstr), "Celas %i\nDesbloqueadas", p+1);
- DestroyDynamic3DTextLabel(PrisonCellsText[p]);
- PrisonCellsText[p] = Text3D:INVALID_3DTEXT_ID;
- PrisonCellsText[p] = CreateDynamic3DTextLabel(cellstr, COLOR_WHITE, PrisonCellsOut[p][0], PrisonCellsOut[p][1], PrisonCellsOut[p][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, 6164, -1, -1, 55);
- }
- }
- }
- return true;
- }
- CMD:wanted(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_COP || Faction[playerid] == FACTION_RESEARCH)
- {
- if(!CanUseMDC(playerid)) return SysMsg(playerid,"Você deve estar em um computador.");
- new count = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Pessoas:");
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(PoliceFineAmount[i] > 0)
- {
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, " %s(%i) - Multa a pagar: $%i.",NameEx(i), i, PoliceFineAmount[i]);
- count++;
- }
- }
- }
- if(!count) SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nenhum");
- }
- else SysMsg(playerid, "Você deve estar em uma facção do governo para usar este comando.");
- return true;
- }
- CMD:cases(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei");
- new count = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Pessoas na prisão:");
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(IsJailed[i] > 0)
- {
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "%s (%i) - %i minutos restantes na cela %i.", NameEx(i), i, JailTime[i], JailCell[i]);
- count++;
- }
- }
- }
- if(count == 0) SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nenhum");
- return true;
- }
- CMD:swat(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_COP) return SysMsg(playerid,"Você precisa ser um membro do SASP.");
- if(FactionRank[playerid] < 3) return SysMsg(playerid,"Você não tem um rank alto suficiente para fazer isso.");
- if(!IsPlayerInRangeOfPoint(playerid,1.75, -779.4825,-394.8364,1805.5311) && GetVehicleModel(GetPlayerVehicleID(playerid)) != 427) return SysMsg(playerid,"Você não está no arsenal/Enforcer.");
- if(SwatMode[playerid] == 0)
- {
- if(!WeaponCheck(playerid, 31)) return SysMsg(playerid, "Você não pode pegar essa arma. Ou tens duas pistolas ou uma arma primária e uma pistola na tua pessoa.");
- SwatMode[playerid] = 1;
- GivePlayerWeaponEx(playerid, 17, 10, 3); //Tear Gas
- GivePlayerWeaponEx(playerid, 31, GetDefaultWeaponAmmo(31), 3);
- SetPlayerArmourEx(playerid, 125, 1);
- SetPlayerSkinEx(playerid, 285);
- TogglePlayerControllable(playerid, 0);
- SetTimerEx("UnFreezePlayer", 1000, 0, "d", playerid);
- SendClientMessage(playerid, COLOR_WHITE, "Você está agora em serviço de S. W. A. T. Use /swat para sair.");
- foreach(new i: Player) if(Faction[i] == FACTION_COP && RadioPoweredOn[playerid]) SendClientMessageF(i, 0x967100FF, "[Radio - 9112 MHz] Central Dispatcher: S.W.A.T Operative %s está agora disponível!", NameEx(playerid));
- }
- else
- {
- SetPlayerSkinEx(playerid, Clothes[playerid][4]);
- cPlayersSkin[playerid] = Clothes[playerid][4];
- MySQLUpdateInt(SQLID[playerid], "Skin", cPlayersSkin[playerid], "players");
- SendClientMessage(playerid, COLOR_WHITE, "Você não está mais no serviço de S. W. A. T.");
- ResetPlayerWeaponsEx(playerid);
- SyncPlayerWeapons(playerid);
- SetPlayerArmourEx(playerid, 100, 1);
- SetPlayerArmedWeapon(playerid, 0);
- SwatMode[playerid] = 0;
- }
- return true;
- }
- CMD:speed(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || IsPlayerAdmin(playerid))
- {
- new Float:vPos[3], Count = 0;
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- GetVehiclePos(v, vPos[0], vPos[1], vPos[2]);
- if(IsVehicleSpawned(v) && IsPlayerInRangeOfPoint(playerid, 40.0, vPos[0], vPos[1], vPos[2]) && GetVehicleSpeed(v, 0) > 0 && VehicleHasDriver(v))
- {
- Count++;
- SendClientMessageF(playerid, COLOR_WHITE, "[Came portátil da velocidade] %s %s - %i MPH", VehicleColors[CarColor[v][0]], GetVehicleName(v), GetVehicleSpeed(v, 0));
- }
- }
- if(Count == 0) SysMsg(playerid, "Nenhum veículo detectado");
- if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) LoopingAnim(playerid, "PED", "gang_gunstand", 4.0, 1, 1, 1, 1, 1);
- format(gstr, sizeof(gstr),"* Oficial %s aponta seu detector de velocidade ao %s. *", NameEx(playerid), GetVehicleName(GetNearestVehicle(playerid)));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 4);
- }
- else return SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:revokelicense(playerid, params[])//remover e suspender licença
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei");
- //if(FactionRank[playerid] < 2) return SysMsg(playerid, "Você não tem um rank alto suficiente para fazer isso to revoke licenses.");
- new playa = -1, type[24], hours;
- if(sscanf(params, "us[24]i", playa, type, hours)) return SysMsg(playerid,"Use: /revokelicense [ID ou nome do jogador] [carro/moto/barco/aviao/heli/veiculo grande] [horas para suspender (até 12, use 0 para revogar)]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- new Float:Pos[3];
- GetPlayerPos(playa, Pos[0], Pos[1], Pos[2]);
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, Pos[0], Pos[1], Pos[2])) return SysMsg(playerid,"Você deve estar perto do jogador.");
- if(hours < 0 || hours > 12) return SysMsg(playerid,"As horas devem ser de 0 a 12.");
- new lic = -1, sqlname[24], vehname[24], susname[32];
- if(strcmp("carro", type, true) == 0) { lic = 0; sqlname = "LicenseCar"; susname = "LicenseSuspendTime_Car"; vehname = "CAR"; }
- else if(strcmp("veiculo grande", type, true) == 0) { lic = 1; sqlname = "LicenseLargeVehicle"; susname = "LicenseSuspendTime_LargeVehicle"; vehname = "LARGE VEHICLE"; }
- else if(strcmp("moto", type, true) == 0) { lic = 2; sqlname = "LicenseBike"; susname = "LicenseSuspendTime_Bike"; vehname = "BIKE"; }
- else if(strcmp("barco", type, true) == 0) { lic = 3; sqlname = "LicenseBoat"; susname = "LicenseSuspendTime_Boat"; vehname = "BOAT"; }
- else if(strcmp("heli", type, true) == 0) { lic = 4; sqlname = "LicenseHelicopter"; susname = "LicenseSuspendTime_Helicopter"; vehname = "HELI"; }
- else if(strcmp("aviao", type, true) == 0) { lic = 5; sqlname = "LicensePlane"; susname = "LicenseSuspendTime_Plane"; vehname = "PLANE"; }
- else return SysMsg(playerid,"Nenhum nome dessa licença.");
- if(Licenses[playa][lic] == 0) return SysMsg(playerid,"Essa pessoa não tem licença.");
- if(LicenseSuspendTime[playa][lic] > 0 && hours > 0) return SysMsg(playerid,"Já suspenderam esta licença.");
- if(hours == 0)
- {
- Licenses[playa][lic] = 0;
- LicenseSuspendTime[playa][lic] = 0;
- MySQLUpdateInt(SQLID[playa], susname, LicenseSuspendTime[playa][lic], "players");
- MySQLUpdateInt(SQLID[playa], sqlname, Licenses[playa][lic], "players");
- format(gstr, sizeof(gstr),"Oficial %s revogou sua licença de %s. (Você deve resistir ao teste)", NameEx(playerid), vehname);
- SendClientMessage(playa,COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr),"Você revogou a licença de %s de %s.", NameEx(playa), vehname);
- SendClientMessage(playerid,COLOR_WHITE, gstr);
- }
- else
- {
- LicenseSuspendTime[playa][lic] = hours * 60;
- MySQLUpdateInt(SQLID[playa], susname, LicenseSuspendTime[playa][lic], "players");
- format(gstr, sizeof(gstr),"Oficial %s suspendeu sua licença de %s por %i horas.", NameEx(playerid), vehname, hours);
- SendClientMessage(playa,COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr),"Você suspendeu a licença de %s de %s por %i horas.", NameEx(playa), vehname, hours);
- SendClientMessage(playerid,COLOR_WHITE, gstr);
- }
- return true;
- }
- CMD:drag(playerid, params[])//comando de arrastar - testar
- {
- if(!Logged{playerid}) return true;
- if(IsDragging[playerid] != -1) return SysMsg(playerid,"Você já está arrastando alguém.");
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você não pode arrastar de dentro de um veículo.");
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /drag [ID ou nome do jogador]");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(playa == playerid) return SysMsg(playerid, "Você não pode arrastar-se.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsCop(playerid) && IsCuffed[playa] == 0) return SysMsg(playerid,"O jogador deve estar algemado para arrastá-los.");
- if(IsJailed[playa] == 1) return SysMsg(playerid,"Você não pode arrastar alguém que está na cadeia.");
- if(IsPlayerInAnyVehicle(playa)) return SysMsg(playerid,"Você não pode arrastá-los se esta pessoa estiver dentro de um veículo.");
- if(IsSpectating[playa] >= 0) return SysMsg(playerid,"Você deve estar perto do jogador to drag them.");
- if(ADuty[playa] == 1) return SysMsg(playerid, "Você não pode usar este comando com um administrador em serviço.");
- foreach(new i: Player)
- {
- if(IsDragging[i] == playerid) return SysMsg(playerid, "Você não pode arrastar alguém que já está arrastando alguém.");
- }
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,4.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para arrastá-lo.");
- IsDragging[playerid] = playa;
- TogglePlayerControllable(playa, 0);
- format(gstr, sizeof(gstr),"* %s agarra %s e começa a arrastá-lo. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s está arrastando você.", NameRP(playerid));
- SendClientMessage(playa,COLOR_BLUE,gstr);
- }
- return true;
- }
- CMD:stopdrag(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsDragging[playerid] == -1) return SysMsg(playerid,"Você não está arrastando ninguém.");
- new playa = IsDragging[playerid];
- TogglePlayerControllable(playa, 1);
- IsDragging[playerid] = -1;
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- format(gstr, sizeof(gstr),"* %s solta %s e deixa ele(a) ir. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s já não está te arrastando.", NameRP(playerid));
- SendClientMessage(playa,COLOR_BLUE,gstr);
- }
- return true;
- }
- CMD:stinger(playerid, params[])//colocar jacafé
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH)
- {
- //if(FactionRank[playerid] < 2) return SysMsg(playerid, "Você não tem um rank alto suficiente para fazer isso to place a Stinger.");
- if(StingerObjectID[playerid] != INVALID_OBJECT_ID) return SysMsg(playerid, "Você já colocou um jacaré no chão.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid, "Você não pode implantar um jacaré dentro de um veículo.");
- new Float:X, Float:Y, Float:Z, Float:Ang;
- GetPlayerPos(playerid, X, Y, Z);
- Ang = GetXYInFrontOfPlayer(playerid, X, Y, 5.0);
- StingerObjectID[playerid] = CreateDynamicObject(2892, X, Y, Z-1, 0.0, 0.0, Ang, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), -1, 300.0);
- StingerAreaID[playerid] = CreateDynamicRectangle(X-2, Y-6, X+2, Y+6);
- format(gstr, sizeof(gstr),"* Oficial %s implanta uma faixa de Spike no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_BLUE, "Stinger implantado! Use /rstinger para remover.");
- }
- return true;
- }
- CMD:rstinger(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH || IsPlayerAdminLevelOK(playerid, 1))
- {
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid, "Você não pode limpar um stinger de dentro de um veículo.");
- foreach(new i: Player)
- {
- new Float:X, Float:Y, Float:Z;
- GetDynamicObjectPos(StingerObjectID[i], X, Y, Z);
- if(IsPlayerInRangeOfPoint(i, 10.0, X, Y, Z))
- {
- DestroyDynamicObjectEx(StingerObjectID[i], "StingerObjectID[i] 1");
- StingerObjectID[i] = INVALID_OBJECT_ID;
- DestroyDynamicArea(StingerAreaID[i]);
- StingerAreaID[i] = -1;
- SendClientMessage(playerid, COLOR_BLUE, "Stinger removido.");
- return true;
- }
- }
- SysMsg(playerid, "Você não está perto de um stinger.");
- }
- else SysMsg(playerid, "Você deve estar no SASP ou no Aperture para usar esse comando.");
- return true;
- }
- CMD:rb(playerid)
- {
- if(!Logged{playerid}) return true;
- if((IsPlayerAdmin(playerid)) || IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_TRUCKING)
- {
- //if(FactionRank[playerid] < 3) return SysMsg(playerid, "Você não tem um rank alto suficiente para fazer isso to place a Roadblock.");
- if(RoadBlockCount[playerid] >= MAX_PLAYERROADBLOCKS) return SysMsg(playerid, "Você já colocou o número máximo de bloqueios rodoviários. Use /removerb.");
- new blocks[9], count; //increase this number whenever adding a roadblock to RBData otherwise it will not show up here and probably return an array index error.
- for(new x = 0; x < sizeof(RBData); x++)
- {
- blocks[x] = RBData[x][RBModel];
- count ++;
- }
- //ShowModelSelectionMenu(playerid, "Place Roadblock", MODEL_SELECTION_ROADBLOCK, blocks, count, 0.0, 0.0, 0.0);
- }
- else SysMsg(playerid, "Você deve estar no SASP/Aperture/SACFD para usar este comando.");
- return true;
- }
- CMD:moverb(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_TRUCKING || IsPlayerAdminLevelOK(playerid, 1))
- {
- SelectingRoadblock{playerid} = true;
- SelectObject(playerid);
- return true;
- }
- else SysMsg(playerid, "Você deve estar no SASP/Aperture/SACFD para usar este comando.");
- return true;
- }
- CMD:roadblock(playerid) return cmd_rb(playerid);
- CMD:removerb(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH || Faction[playerid] == FACTION_TRUCKING || IsPlayerAdminLevelOK(playerid, 1))
- {
- RemovingRoadblock{playerid} = true;
- SelectObject(playerid);
- }
- else SysMsg(playerid, "Você deve estar no SASP/Aperture/SACFD para usar este comando.");
- return true;
- }
- CMD:ram(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_SACFD || IsCop(playerid) || Faction[playerid] == FACTION_RESEARCH)
- {
- // HOUSES
- new Float:percChance[2], Float:randChos = random(100), ef = 0;
- percChance[0] = 0.4;
- percChance[1] = 0.6;
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid,DOOR_PROXIMITY,HouseData[h][oPosX],HouseData[h][oPosY],HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- if(HouseData[h][HouseOwnerSQLID] == -5) return SysMsg(playerid,"Você não pode derrubar essa porta.");
- if(HouseData[h][HouseLocked] == 0) return SysMsg(playerid, "A porta da casa não está trancada.");
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(IsInHouseID[i] == h)
- {
- SendClientMessage(i, COLOR_EMOTE, "**Um som alto é ouvido na porta.**");
- PlayerPlaySound(i, 6603, HouseData[h][intPosX], HouseData[h][intPosY], HouseData[h][intPosZ]);
- }
- if(IsPlayerInRangeOfPoint(i, 20.0, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ]))
- {
- PlayerPlaySound(i, 6603, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ]);
- }
- }
- }
- while(randChos > 0)
- {
- ef = random(2);
- randChos = floatsub(randChos, percChance[ef]);
- }
- if(ef == 1)
- {
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta, mas falha. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- HouseData[h][HouseLocked] = 0;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "HouseLocked", HouseData[h][HouseLocked], "houses");
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta e consegue. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"A porta da %s está agora aberta.",HouseData[h][HouseDescription]);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- return true;
- }
- }
- // BIZZes
- for(new b = 0; b < MAX_BIZZ; b++)
- {
- if(IsPlayerInRangeOfPoint(playerid,DOOR_PROXIMITY,BizzData[b][oPosX],BizzData[b][oPosY],BizzData[b][oPosZ]))
- {
- if(BizzData[b][BizzOwnerSQLID] == -5) return SysMsg(playerid,"Você não pode abaixar esta porta.");
- if(!BizzData[b][BizzLocked]) return SysMsg(playerid, "O negócio não está fechado.");
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(IsInBizzID[i] == b)
- {
- SendClientMessage(i, COLOR_EMOTE, "**Um som alto é ouvido na porta.**");
- PlayerPlaySound(i, 6603, BizzData[b][iPosX], BizzData[b][iPosY], BizzData[b][iPosZ]);
- }
- if(IsPlayerInRangeOfPoint(i, 20.0, BizzData[b][oPosX], BizzData[b][oPosY], BizzData[b][oPosZ]))
- {
- PlayerPlaySound(i, 6603, BizzData[b][oPosX], BizzData[b][oPosY], BizzData[b][oPosZ]);
- }
- }
- }
- while(randChos > 0)
- {
- ef = random(2);
- randChos = floatsub(randChos, percChance[ef]);
- }
- if(ef == 1)
- {
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta, mas falha. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- BizzData[b][BizzLocked] = false;
- MySQLUpdateInt(BizzData[b][BizzSQLID], "Locked", BizzData[b][BizzLocked], "bizz");
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta e consegue. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"A porta da %s está agora aberta.",BizzData[b][BizzDescription]);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- return true;
- }
- }
- //garages
- for(new g = 0; g < MAX_GARAGES; g++)
- {
- if(IsPlayerInRangeOfPoint(playerid,DOOR_PROXIMITY,GarageData[g][oPosX],GarageData[g][oPosY],GarageData[g][oPosZ]))
- {
- if(!GarageData[g][GarageLocked]) return SysMsg(playerid, "A garagem não está fechada.");
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(IsInGarageID[i] == g)
- {
- SendClientMessage(i, COLOR_EMOTE, "**Um som alto é ouvido na porta.**");
- PlayerPlaySound(i, 6603, GarageData[g][iPosX], GarageData[g][iPosY], GarageData[g][iPosZ]);
- }
- if(IsPlayerInRangeOfPoint(i, 20.0, GarageData[g][oPosX], GarageData[g][oPosY], GarageData[g][oPosZ]))
- {
- PlayerPlaySound(i, 6603, GarageData[g][oPosX], GarageData[g][oPosY], GarageData[g][oPosZ]);
- }
- }
- }
- while(randChos > 0)
- {
- ef = random(2);
- randChos = floatsub(randChos, percChance[ef]);
- }
- if(ef == 1)
- {
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta, mas falha. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- GarageData[g][GarageLocked] = false;
- MySQLUpdateInt(GarageData[g][gID], "Locked", GarageData[g][GarageLocked], "bizz");
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta e consegue. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"A garagem de %s está agora aberta.",HouseData[GarageData[g][gHouseID]][HouseDescription]);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- return true;
- }
- }
- //house furniture doors
- if(IsInHouseID[playerid] != -1)
- {
- new h = IsInHouseID[playerid], Float:x, Float:y, Float:z;
- for(new f = 0; f < MAX_HFURNITURE; f++)
- {
- if(IsValidDoorObject(HouseData[h][FurnModel][f]))
- {
- GetDynamicObjectPos(HouseData[h][FurnObject][f], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 2.0, x, y, z))
- {
- if(!HouseData[h][DoorOpen][f] && HouseData[h][DoorLocked][f])
- {
- while(randChos > 0)
- {
- ef = random(2);
- randChos = floatsub(randChos, percChance[ef]);
- }
- if(ef == 1)
- {
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta, mas falha. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- ProcessHouseDoorRam(playerid, h, f);
- format(gstr, sizeof(gstr),"* %s tenta abrir a porta e consegue. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- break;
- }
- }
- }
- }
- }
- }
- }
- else SysMsg(playerid, "Você deve estar no SASP, SACFD ou Aperture para usar isso.");
- return true;
- }
- CMD:backup(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem um Radio.");
- if(RadioPoweredOn[playerid] == 0) return SysMsg(playerid,"Your Radio is not powered on. (/ron)");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você deve estar em uma facção.");
- if(Duty[playerid] != 1) return SysMsg(playerid, "Você deve estar de plantão.");
- if(Dead{playerid} && IsHeadshotted(playerid)) return SysMsg(playerid,"Você não pode fazer isso depois de ser ferido por um tiro na cabeça.");
- if(Faction[playerid] == FACTION_SACFD || IsCop(playerid))
- {
- if(isnull(params)) return SysMsg(playerid, "Use: /backup [SASP/fd]");
- new freq, faction = -1, zone[MAX_ZONE_NAME];
- GetPlayer2DZone(playerid, zone, MAX_ZONE_NAME);
- format(BackupLocation[playerid], MAX_ZONE_NAME, zone);
- if(strcmp(params, "SASP", true) == 0)
- {
- freq = FACTIONS[FACTION_COP][FactionRadioChannel];
- faction = FACTION_COP;
- BackupType[playerid] = 2;
- }
- else if(strcmp(params, "fd", true) == 0)
- {
- freq = FACTIONS[FACTION_SACFD][FactionRadioChannel];
- faction = FACTION_SACFD;
- BackupType[playerid] = 1;
- }
- if(faction == -1) return SysMsg(playerid, "Use: /backup [SASP/fd]");
- format(sgstr, sizeof(sgstr), "[Radio - %i MHz] Departmental Dispatcher: %s %s de %s está solicitando backup em %s.", freq, GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), FACTIONS[Faction[playerid]][FNameShort], zone);
- foreach(new i: Player)
- {
- if(IsPlayerNPC(i) || !Logged{i}) continue;
- if(RadioPoweredOn[i] == 1 && RadioFrequency[i] == freq && Faction[i] == faction)
- {
- SendClientMessage(i, 0x967100FF, sgstr);
- }
- }
- if(!IsPlayerInAnyVehicle(playerid)) format(sgstr, sizeof(sgstr),"* %s pressiona um botão no rádio. *", NameRP(playerid));
- else format(sgstr, sizeof(sgstr),"* %s pressiona um botão no computador de dados móveis. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- stock IsHeadshotted(playerid)
- {
- for(new hit = 0; hit < HitCount[playerid]; hit++)
- {
- if(Injuries[playerid][hit][pBodypart] == 9)
- {
- return true;
- }
- }
- return false;
- }
- CMD:backupcancel(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você deve estar em uma facção.");
- if(Faction[playerid] == FACTION_SACFD || IsCop(playerid))
- {
- new freq;
- switch(BackupType[playerid])
- {
- case 1: freq = FACTIONS[FACTION_SACFD][FactionRadioChannel];
- case 2: freq = FACTIONS[FACTION_COP][FactionRadioChannel];
- }
- format(gstr, sizeof(gstr), "[Radio - %i MHz] Departmental Dispatcher: %s %s de %s já não precisa de backup.", freq, GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), FACTIONS[Faction[playerid]][FNameShort]);
- foreach(new i: Player)
- {
- if(IsPlayerNPC(i) || !Logged{i}) continue;
- if(RadioPoweredOn[i] == 1 && RadioFrequency[i] == freq)
- {
- SendClientMessage(i, 0x967100FF, gstr);
- }
- }
- BackupType[playerid] = 0;
- }
- return true;
- }
- CMD:bkcancel(playerid, params[]) return cmd_backupcancel(playerid, params);
- CMD:cctv(playerid, params[])
- {
- if(!Logged{playerid}) return true;//parei aqui
- if(UsingCCTV{playerid} || (Faction[playerid] == FACTION_COP && IsPlayerInRangeOfPoint(playerid, 2.5, -789.2172,-418.8984,1601.9958)) || Faction[playerid] == FACTION_RESEARCH && IsPlayerInRangeOfPoint(playerid, 2.5, 1034.3674,-1115.4692,2025.2595))
- {
- gstr[0] = EOS;
- strcat(gstr, "Blueberry Norte\n");
- strcat(gstr, "Blueberry sul\n");
- strcat(gstr, "Blueberry Truck Terminal\n");
- strcat(gstr, "Bone County Leste Gas Station\n");
- strcat(gstr, "Dillimore Norte\n");
- strcat(gstr, "Dillimore Oeste\n");
- strcat(gstr, "El Quebrados Central\n");
- strcat(gstr, "El Quebrados Leste\n");
- strcat(gstr, "Fort Carson Central\n");
- strcat(gstr, "Fort Carson Leste\n");
- strcat(gstr, "Fort Carson Gas Station\n");
- strcat(gstr, "Fort Carson Medical Center\n");
- strcat(gstr, "Fort Carson Entrada norte\n");
- strcat(gstr, "Hunter Quarry Intersection\n");
- strcat(gstr, "Las Barrancas Sul\n");
- strcat(gstr, "Las Barrancas\n");
- strcat(gstr, "Las Payasadas\n");
- strcat(gstr, "Montgomery Leste\n");
- strcat(gstr, "Montgomery Hospital\n");
- strcat(gstr, "Montgomery Sul\n");
- strcat(gstr, "Palomino Creek Leste\n");
- strcat(gstr, "Palomino Creek Main St\n");
- strcat(gstr, "Palomino Creek Sul\n");
- strcat(gstr, "Pay Toll Leste\n");
- strcat(gstr, "Pay Toll West\n");
- strcat(gstr, "Tiera Robada Junção\n");
- strcat(gstr, "Tiera Robada Sul\n");
- if(!UsingCCTV{playerid})
- {
- if(Faction[playerid] == FACTION_COP)
- {
- SetPlayerCameraPos(playerid, 263.7805, 109.5896, 1005.817);
- SetPlayerCameraLookAt(playerid, 253.7805, 109.5896, 1005.817);
- }
- else if(Faction[playerid] == FACTION_PROP)
- {
- SetPlayerCameraPos(playerid, 263.7805, 109.5896, 1005.817);
- SetPlayerCameraLookAt(playerid, 253.7805, 109.5896, 1005.817);
- }
- }
- Dialog_Show(playerid, CCTVMenu, DIALOG_STYLE_LIST, "CCTV - Lista de câmeras", gstr, "Ver", "Sair");
- UsingCCTV{playerid} = true;
- FadeColorForPlayer(playerid, 63, 71, 76, 100, 63, 71, 76, 100, 1, 10);
- }
- else SysMsg(playerid, "SASP apenas. Você deve estar em uma sala CCTV.");
- return true;
- }
- CMD:elm(playerid)
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(IsCop(playerid) || Faction[playerid] == FACTION_SACFD || Faction[playerid] == FACTION_RESEARCH)
- {
- if(VehID == 0) return SysMsg(playerid,"Você precisa estar em um veiculo de facção.");
- if(IsFactionVehicle(VehID) != Faction[playerid]) return SysMsg(playerid,"Você precisa estar em um veiculo de facção.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER && (GetPlayerVehicleSeat(playerid) != 1 && GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)) return SysMsg(playerid,"Você precisa estar no acento de condução ou passageiro da frente.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(!ELMs{VehID})
- {
- ToggleVehicleLights(VehID, 1);
- EmergencyLights[VehID] = 0;
- ELMs{VehID} = true;
- SendClientMessage(playerid, COLOR_WHITE, "> Luzes de emergência {4BB74C}On");
- ShowInfoText(playerid,"~g~Luzes de emergência ON",1000);
- }
- else if(ELMs{VehID})
- {
- EmergencyLights[VehID] = 0;
- ToggleVehicleLights(VehID, VehicleLights[VehID]);
- new panels, doors, lights, tires;
- GetVehicleDamageStatus(VehID, panels, doors, lights, tires);
- UpdateVehicleDamageStatus(VehID, panels, doors, 0, tires);
- SendClientMessage(playerid, COLOR_WHITE, "> Luzes de emergência {8B0000}Off");
- ShowInfoText(playerid,"~r~Luzes de emergência Off",1000);
- ELMs{VehID} = false;
- }
- }
- else SysMsg(playerid,"Somente certas facções podem usar esse recurso.");
- return true;
- }
- CMD:jail(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid))
- {
- new playa = -1, time, cellid, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]ii", name, time, cellid)) return SysMsg(playerid,"Use: /jail [ID ou nome do jogador] [tempo] [número do cela, 1-4]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsDragging[playerid] == playa) return SysMsg(playerid,"Você não pode encarcerar a pessoa que está arrastando.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador to jail them.");
- if(time < 1) return SysMsg(playerid,"O tempo deve ser superior a 0 minutos");
- if(time > 60) return SysMsg(playerid,"O tempo deve ser inferior a 60 minutos");
- if(cellid < 1) return SysMsg(playerid,"O número da cela deve ser 1, 2, 3 ou 4");
- if(cellid > 4) return SysMsg(playerid,"O número da cela deve ser 1, 2, 3 ou 4");
- JailTime[playa] = time;
- MySQLUpdateInt(SQLID[playa], "JailTime", JailTime[playa], "players");
- JailPlayer(playa, cellid);
- IsJailed[playa] = 1;
- JailCell[playa] = cellid;
- SendClientMessageF(playa,COLOR_DARKBLUE,"Oficial %s prendeu você podoe %i Minuto(s)",NameEx(playerid),time);
- foreach(new i: Player)
- {
- if(Logged{i} && (IsCop(i))) SendClientMessageF(i,COLOR_DARKBLUE,"Oficial %s prendeu %s",NameEx(playerid),NameEx(playa));
- }
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "Você prendeu %s por %i Minuto(s)",NameEx(playa),time);
- AddToMDC(SQLID[playa], playerid, MDC_TYPE_JAIL, time, "");
- foreach(new i: Player)
- {
- if(PlayerToBeDetained[i] == playa)
- {
- PlayerToBeDetained[i] = -1;
- PlayerToBeDetainedSeat[i] = -1;
- break;
- }
- }
- }
- else return SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:unjail(playerid, params[])
- {
- new playa = -1;
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid)) return true;
- {
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /unjail [ID ou nome do jogador]");
- if(IsJailed[playa] == 0) return SysMsg(playerid,"Este jogador não está preso.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,4.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para liberá-los.");
- UnJailPlayer(playa);
- MySQLUpdateInt(SQLID[playa], "JailTime", 0, "players");
- SendClientMessageF(playa, COLOR_RED, "Oficial %s o liberou da prisão.",NameRP(playerid));
- foreach(new i: Player)
- {
- if(Logged{i} && (IsCop(i))) SendClientMessageF(i,COLOR_DARKBLUE,"Oficial %s liberou %s da prisão.",NameEx(playerid),NameRP(playa));
- }
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "Você liberou %s da prisão.",NameEx(playa));
- }
- return true;
- }
- CMD:timeleft(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(PlayerImprisoned{playerid}) return SendClientMessageF(playerid, COLOR_WHITE, "Você tem {FFA900}%i{FFFFFF} minutos restantes na prisão.", PrisonTime[playerid]);
- if(IsJailed[playerid] == 1) return SendClientMessageF(playerid, COLOR_WHITE, "Você tem {FFA900}%i{FFFFFF} minutos restantes na prisão.", JailTime[playerid]);
- else return SysMsg(playerid, "Você não está em Jail ou em Prisão.");
- }
- CMD:prison(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsCop(playerid))
- {
- new playa = -1, time, cellid, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]ii", name, time, cellid)) return SysMsg(playerid,"Use: /prison [ID ou nome do jogador] [horas] [número da cela]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsDragging[playerid] == playa) return SysMsg(playerid,"Você não pode aprisionar a pessoa que você está arrastando.");
- if(playerid == playa) return SysMsg(playerid,"Você não pode se aprisionar.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador to imprison them.");
- if(time < 1) return SysMsg(playerid,"O tempo deve ser superior a 1 hora.");
- if(time > 2) return SysMsg(playerid,"O tempo não deve ser mais do que 2 horas.");
- if(cellid < 1 || cellid > 16) return SysMsg(playerid,"Números de cela variam de 1 a 16 apenas.");
- cellid --;
- PrisonTime[playa] = time*60;
- ImprisonPlayer(playa, cellid);
- PlayerImprisoned{playa} = true;
- if(Cash[playa] > 0)
- {
- BankBalance[playa] += Cash[playa];
- SetPlayerCash(playa, 0);
- }
- SetPlayerArmourEx(playa, 0.0, 1);
- Inventory[playa][Fags] = 0;
- Inventory[playa][Lighter] = 0;
- Inventory[playa][Weed] = 0;
- Inventory[playa][MoonShine] = 0;
- Inventory[playa][Cocaine] = 0;
- Inventory[playa][AmmoBox][0] = 0;
- Inventory[playa][AmmoBox][1] = 0;
- Inventory[playa][AmmoBox][2] = 0;
- Inventory[playa][AmmoBox][3] = 0;
- Inventory[playa][AmmoBox][4] = 0;
- Inventory[playa][AmmoBox][5] = 0;
- Inventory[playa][Rope] = 0;
- Inventory[playa][RollingPaper] = 0;
- Inventory[playa][Bong] = 0;
- Inventory[playa][Briefcase] = 0;
- BriefcaseWeapon[playa] = 0;
- BriefcaseCash[playa] = 0;
- BriefcaseWeed[playa] = 0;
- BriefcaseCocaine[playa] = 0;
- BriefcaseCode[playa] = 0;
- BriefcaseLocked[playa] = 0;
- Inventory[playa][MedKit] = 0;
- Inventory[playa][Toolbox] = 0;
- Inventory[playa][WeedSeed] = 0;
- Inventory[playa][Water] = 0;
- mysql_pqueryf(conn, "UPDATE players SET HasFags = 0, HasLighter = 0, Weed = 0, Cocaine = 0, Moonshine = 0, AmmoBoxPistol = 0, AmmoBoxShotgun = 0, AmmoBoxSMG = 0, AmmoBoxRifle = 0, AmmoBoxAssaultR = 0,\
- HasRope = 0, RollingPaper = 0, Bong = 0, HasMedKit = 0, HasToolbox = 0, HasWater = 0, HasWeedSeed = 0, PrisonTime = %i, Bank = %i WHERE id = %i", PrisonTime[playa], BankBalance[playa], SQLID[playa]);
- if(IsPlayerMasked{playa}) cmd_unmask(playa, "");
- AddToMDC(SQLID[playa], playerid, MDC_TYPE_JAIL, (time * 60), "");
- SendClientMessageF(playa,COLOR_RED, "%s o aprisionou por %i horas.",NameEx(playerid),time);
- SendClientMessage(playa, COLOR_WHITE, "Nota: Certos itens não são autorizados na prisão, eles foram tirados de você. Qualquer dinheiro que você tenha agora estará no seu banco.");
- SendClientMessage(playa, COLOR_WHITE, "Artigos confiscados: Cigarros, isqueiros, Drogas/itens de drogas, munição, armas, corda, líquidos, Ferramentas, bolsas/maletas, celular, radio");
- foreach(new i: Player) if(Logged{i} && IsCop(i)) SendClientMessageF(i,COLOR_DARKBLUE, "Oficial %s aprisionou %s.",NameEx(playerid),NameEx(playa));
- SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Você aprisionou %s por %i horas.",NameEx(playa),time);
- foreach(new i: Player)
- {
- if(PlayerToBeDetained[i] == playa)
- {
- PlayerToBeDetained[i] = -1;
- PlayerToBeDetainedSeat[i] = -1;
- break;
- }
- }
- }
- else return SysMsg(playerid,"Você precisa ser membro da Polícia do Estado.");
- return true;
- }
- CMD:isolate(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] != FACTION_COP) return SysMsg(playerid, "Você deve estar no SASP para isolar os jogadores.");
- new playa = -1, time, isoid;
- if(sscanf(params, "iii", playa, time, isoid)) return SysMsg(playerid,"Use: /isolate [player id] [tempo em minutos] [número do quarto]");
- if(Isolated[playa] == 1) return SysMsg(playerid, "Esse jogador já está isolado.");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsDragging[playerid] == playa) return SysMsg(playerid,"Não pode isolar a pessoa que está arrastando.");
- if(playerid == playa) return SysMsg(playerid,"Não pode se isolar.");
- if(time > PrisonTime[playa]) return SysMsg(playerid, "Você não pode isolar alguém por mais tempo que sua sentença de prisão.");
- if(isoid > 3) return SysMsg(playerid, "Você deve selecionar o quarto 0-3.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador to isolate them.");
- SendClientMessageF(playa,COLOR_RED, "Oficial correcional %s colocou você em isolamento por %i minutos.",NameEx(playerid),time);
- foreach(new i: Player) if(Logged{i} && Faction[i] == FACTION_COP) SendClientMessageF(i,COLOR_DARKBLUE, "Oficial correcional %s colocou %s na solitária.",NameEx(playerid),NameEx(playa));
- IsolationTime[playa] = time;
- MySQLUpdateInt(SQLID[playa], "IsolationTime", IsolationTime[playa], "players");
- IsolatePlayer(playa, isoid);
- Isolated[playa] = 1;
- return true;
- }
- CMD:editprison(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_COP)
- {
- new playa = -1, etime;
- if(sscanf(params, "ui", playa, etime)) return SysMsg(playerid,"Use: /editprison [ID ou nome do jogador] [minutos]");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(!PlayerImprisoned{playa}) return SysMsg(playerid,"Esse jogador não está na prisão.");
- if(etime < 1) return SysMsg(playerid,"O tempo deve ser superior a 1 hora.");
- if(etime > 120) return SysMsg(playerid,"O tempo não deve ser superior a 2 horas.");
- PrisonTime[playa] = etime;
- MySQLUpdateInt(SQLID[playa], "PrisonTime", PrisonTime[playa], "players");
- SendClientMessageF(playa,COLOR_RED, "Seu tempo de prisão foi alterado por %i minutos por %s.",etime,NameEx(playerid));
- SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Mudou o tempo de prisão de %s para %i minutos.",NameEx(playa),etime);
- }
- else return SysMsg(playerid,"Você deve estar no SASP para usar esse comando.");
- return true;
- }
- CMD:releaseprisoner(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_COP || IsPlayerAdminLevelOK(playerid, 4))
- {
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /releaseprisoner [ID ou nome do jogador]");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(!PlayerImprisoned{playa}) return SysMsg(playerid,"Esse jogador não está na prisão.");
- ReleaseFromPrison(playa);
- SendClientMessageF(playa, COLOR_RED, "Você foi libertado da prisão por %s.",NameEx(playerid));
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "Você liberou %s da prisão.",NameEx(playa));
- if(IsPlayerAdminLevelOK(playerid, 0)) foreach(new p: Player) if(Faction[p] == FACTION_COP) SendClientMessageF(p, COLOR_LIGHTBLUE, "[Polícia - Mensagem] %s foi libertado da prisão por %s %s.", NameEx(playa), GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid));
- }
- else return SysMsg(playerid,"Você deve ser um membro do SASP para usar este comando.");
- return true;
- }
- CMD:prisoners(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_COP || IsPlayerAdminLevelOK(playerid, 1))
- {
- new prisoner[48], count = 0;
- gstr[0] = EOS;
- strcat(gstr, "{A58977}Green Palms Correctional Facility Prisoners {B0B9CE}(( Online Players ))\n\n{FFFFFF}");
- foreach(new i: Player)
- {
- if(Logged{i} && PlayerImprisoned{i})
- {
- format(prisoner, sizeof(prisoner), "%s - %i minutos restantes\n", NameEx(i), PrisonTime[i]);
- strcat(gstr, prisoner);
- count ++;
- }
- }
- if(count == 0) SysMsg(playerid, "Ninguém está na prisão agora.");
- else ShowMessage(playerid, "Prisioneiros:", gstr, "Pronto");
- }
- else return SysMsg(playerid,"Você deve ser um membro do SASP para usar este comando.");
- return true;
- }
- CMD:celldoor(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_COP)
- {
- if(GetPlayerInterior(playerid) != 6 && GetPlayerVirtualWorld(playerid) != 6164) return SysMsg(playerid, "Você só pode interagir com as portas das celas se você estiver na sala principal da prisão.");
- new number[4], action[7], cellid = -1;
- if(sscanf(params, "s[4]s[7]", number, action)) return SysMsg(playerid,"Use: /celldoor [número de célula ou 'todas'] [(f)echar/(a)brir]");
- if(IsNumeric(number))
- {
- cellid = strval(number);
- if(cellid < 1 || cellid > 16) return SysMsg(playerid, "O número da cela deve estar entre 1 e 20, ou use 'all' para fechar/abrir todos de uma vez.");
- cellid --;
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, PrisonCellsOut[cellid][0], PrisonCellsOut[cellid][1], PrisonCellsOut[cellid][2])) return SysMsg(playerid, "Você deve estar mais perto da porta celular primeiro.");
- new cellstr[50];
- if(strcmp("fechar", action, true) == 0 || strcmp("F", action, true) == 0)
- {
- if(PrisonCellsLock[cellid] == 1) return SysMsg(playerid, "Essa porta cela já está trancada.");
- PrisonCellsLock[cellid] = 1;
- format(cellstr, sizeof(cellstr), "Cela %i\nFechada", cellid+1);
- DestroyDynamic3DTextLabel(PrisonCellsText[cellid]);
- PrisonCellsText[cellid] = Text3D:INVALID_3DTEXT_ID;
- PrisonCellsText[cellid] = CreateDynamic3DTextLabel(cellstr, COLOR_WHITE, PrisonCellsOut[cellid][0], PrisonCellsOut[cellid][1], PrisonCellsOut[cellid][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, 6164, -1, -1, 5);
- format(cellstr, sizeof(cellstr), "Cela %i {8B0000}Fechada", cellid+1);
- SendClientMessage(playerid, COLOR_WHITE, cellstr);
- return true;
- }
- else if(strcmp("abrir", action, true) == 0 || strcmp("A", action, true) == 0)
- {
- if(PrisonCellsLock[cellid] == 0) return SysMsg(playerid, "Essa porta cela já está aberta.");
- PrisonCellsLock[cellid] = 0;
- DestroyDynamic3DTextLabel(PrisonCellsText[cellid]);
- PrisonCellsText[cellid] = Text3D:INVALID_3DTEXT_ID;
- PrisonCellsText[cellid] = CreateDynamic3DTextLabel(cellstr, COLOR_WHITE, PrisonCellsOut[cellid][0], PrisonCellsOut[cellid][1], PrisonCellsOut[cellid][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, 6164, -1, -1, 5);
- format(cellstr, sizeof(cellstr), "Cela %i {4BB74C}Aberta", cellid+1);
- SendClientMessage(playerid, COLOR_WHITE, cellstr);
- return true;
- }
- else return SysMsg(playerid, "Use 'abrir' ou 'fecha'. Você também pode usar A e F.");
- }
- else
- {
- if(strcmp("all", number, true) == 0 || strcmp("A", number, true) == 0)
- {
- new changed = 0, p, cellstr[22];
- if(strcmp("fechar", action, true) == 0 || strcmp("F", action, true) == 0)
- {
- for(p = 0; p < 16; p++)
- {
- if(PrisonCellsLock[p] == 0)
- {
- changed ++;
- PrisonCellsLock[p] = 1;
- format(cellstr, sizeof(cellstr), "Cela %i\nFechada", p+1);
- DestroyDynamic3DTextLabel(PrisonCellsText[p]);
- PrisonCellsText[p] = Text3D:INVALID_3DTEXT_ID;
- PrisonCellsText[p] = CreateDynamic3DTextLabel(cellstr, COLOR_WHITE, PrisonCellsOut[p][0], PrisonCellsOut[p][1], PrisonCellsOut[p][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, 6164, -1, -1, 5);
- }
- }
- if(changed == 0) return SysMsg(playerid, "Todas as cela já estão bloqueadas.");
- SendClientMessage(playerid, COLOR_WHITE, "Todas as cela {8B0000}Fechadas");
- return true;
- }
- else if(strcmp("abrir", action, true) == 0 || strcmp("A", action, true) == 0)
- {
- for(p = 0; p < 16; p++)
- {
- if(PrisonCellsLock[p] == 1)
- {
- changed ++;
- PrisonCellsLock[p] = 0;
- format(cellstr, sizeof(cellstr), "Cela %i\nAberta", p+1);
- DestroyDynamic3DTextLabel(PrisonCellsText[p]);
- PrisonCellsText[p] = Text3D:INVALID_3DTEXT_ID;
- PrisonCellsText[p] = CreateDynamic3DTextLabel(cellstr, COLOR_WHITE, PrisonCellsOut[p][0], PrisonCellsOut[p][1], PrisonCellsOut[p][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, 6164, -1, -1, 5);
- }
- }
- if(changed == 0) return SysMsg(playerid, "Todas as cela já estão desbloqueadas.");
- SendClientMessage(playerid, COLOR_WHITE, "Todas as cela foram {4BB74C}Aberta");
- return true;
- }
- else return SysMsg(playerid, "Use qualquer um 'abrir' ou 'fechar'. Você também pode usar A e F.");
- }
- }
- }
- else return SysMsg(playerid,"Você precisa ser um membro do SASP para usar esse comando.");
- return true;
- }
- CMD:fine(playerid, params[])//multar
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei.");
- new playa = -1, cash, reason[64];
- if(sscanf(params, "uiS()[64]", playa, cash, reason)) return SysMsg(playerid,"Use: /fine [ID ou nome do jogador] [valor] [Opcional: razão]");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador to fine them.");
- if(cash < 1) return SysMsg(playerid,"A multa deve ser maior do que $0");
- switch(PlayerLevel[playa])
- {
- case 0,1: if(cash > 10000) return SysMsg(playerid,"O valor máximo para jogadores de nível 1 é $10,000.");
- case 2,3: if(cash > 20000) return SysMsg(playerid,"O valor máximo para jogadores de nível 2 e 3 é $20,000.");
- case 4,5: if(cash > 30000) return SysMsg(playerid,"O valor máximo para jogadores de nível 4 e 5 é $30,000.");
- default: if(cash > 60000) return SysMsg(playerid,"O valor máximo é $60,000.");
- }
- if(strlen(reason) > 63) return SysMsg(playerid,"A razão foi muito longa.");
- if(isnull(reason)) format(reason, sizeof(reason), "Não especificado");
- if(PoliceFineAmount[playa] < 0)
- {
- PoliceFineAmount[playa] = 0;
- }
- PoliceFineAmount[playa] += cash;
- MySQLUpdateInt(SQLID[playa], "PoliceFine", PoliceFineAmount[playa], "players");
- AddToMDC(SQLID[playa], playerid, MDC_TYPE_FINE, cash, reason);
- if(PlayerToBeDetained[playerid] == playa)
- {
- PlayerToBeDetained[playerid] = -1;
- PlayerToBeDetainedSeat[playerid] = -1;
- }
- if(IsCop(playerid)) format(gstr, sizeof(gstr),"Oficial %s te aplicou um multa $%s, use '/aceitar multa' para pagar. [Razão: %s]",NameEx(playerid),format_cash(cash),reason);
- SendClientMessage(playa,COLOR_RED,gstr);
- format(gstr, sizeof(gstr),"Você multou %s por $%s [Razão: %s]",NameEx(playa),format_cash(cash),reason);
- SendClientMessage(playerid,COLOR_LIGHTBLUE,gstr);
- return true;
- }
- CMD:warning(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei");
- new playa = -1, reason[50];
- if(sscanf(params, "us[50]", playa, reason)) return SysMsg(playerid,"Use: /avisaring [ID ou nome do jogador] [razão]");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador to warn them.");
- if(strlen(reason) < 2 || strlen(reason) > 50) return SysMsg(playerid,"A razão foi muito longa/curta.");
- SendClientMessageF(playa, COLOR_RED, "Aviso oficial do oficial %s: %s",NameEx(playerid),reason);
- SendClientMessageF(playa, COLOR_RED, "Isto será em seu registro criminal.");
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "Você advertiu %s: %s",NameEx(playa),reason);
- return true;
- }
- CMD:pticket(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei");
- new vehicleid = GetNearestVehicle(playerid);
- new regplate[MAX_REG_PLATE], ticketAmount;
- if(sscanf(params, "s[8]i", regplate, ticketAmount)) return SysMsg(playerid,"Use: Tickt de estacionamento: /pticket [placa de matrícula] [Quantidade]");
- if(!strmatch(VehicleData[vehicleid][RegPlate], regplate) || strlen(VehicleData[vehicleid][RegPlate]) <= 0) return SysMsg(playerid, "Você não está no alcance desse veículo ou a placa não existe.");
- if(ticketAmount < 1 || ticketAmount > 1000) return SysMsg(playerid,"O valor deve estar entre $1 e $1000.");
- VehicleData[vehicleid][TicketAmount] += ticketAmount;
- MySQLUpdateInt(VehicleData[vehicleid][VehSQLID], "TicketAmount", ticketAmount, "vehicles");
- format(gstr, sizeof(gstr),"Você definiu um $%i ticket por %s [%s, Proprietário: %s]", ticketAmount, VehicleData[vehicleid][RegPlate], GetVehicleNameEx(VehicleData[vehicleid][VehicleModel]), GetSQLName(VehicleData[vehicleid][VehicleOwnerSQLID]));
- SendClientMessage(playerid,COLOR_LIGHTBLUE,gstr);
- return true;
- }
- CMD:impound(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 50.0, 619.4, -592.6, 17.2)) return SysMsg(playerid,"Você precisa estar perto da Garagem do Impound (Dillimore).");
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar em um veiculo.");
- new vehicleid = GetPlayerVehicleID(playerid);
- new impoundid = GetVehicleTrailer(vehicleid);
- if(GetVehicleModel(vehicleid) != 525 || impoundid == 0) return SysMsg(playerid, "Você deve ter o veículo ligado a um reboque, para apreendê-lo.");
- if(IsRentalCar(impoundid) || IsServerCar(impoundid)) return SysMsg(playerid, "Não pode confiscar os veículos do servidor.");
- new cashAmount, impoundHours, reason[64];
- if(sscanf(params, "iis[64]", cashAmount, impoundHours, reason)) return SysMsg(playerid,"Use: /impound [valor da multa] [horas] [razão]");
- if(cashAmount < 0 || cashAmount > 1000) return SysMsg(playerid,"O valor deve estar entre $1 e $1000.");
- if(impoundHours < 1 || impoundHours > 24) return SysMsg(playerid,"O tempo de depósito deve estar entre 1 e 24 horas..");
- if(strlen(reason) > 19) return SysMsg(playerid,"Razão foi muito longa.");
- new impound_minutes = impoundHours * 60;
- if(VehicleData[impoundid][IdVehicle] > 0)
- {
- if(VehicleData[impoundid][Impounded]) return SysMsg(playerid, "Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: VIMP-1)");
- VehicleData[impoundid][Impounded] = true;
- for(new im = 0, x = GetVehiclePoolSize(); im <= x; im++)
- {
- if(ImpoundData[im][iSQLID] < 1)
- {
- ImpoundData[im][iModel] = VehicleData[impoundid][VehicleModel];
- ImpoundData[im][iSQLID] = VehicleData[impoundid][VehSQLID];
- ImpoundData[im][iOwnerSQLID] = VehicleData[impoundid][VehicleOwnerSQLID];
- ImpoundData[im][iImpoundedBy] = SQLID[playerid];
- ImpoundData[im][iImpoundFee] = cashAmount;
- ImpoundData[im][iImpoundTime] = impound_minutes;
- ImpoundData[im][iColor1] = VehicleData[impoundid][vColor1];
- ImpoundData[im][iColor2] = VehicleData[impoundid][vColor2];
- format(ImpoundData[im][iImpoundReason], 64, reason);
- format(ImpoundData[im][iRegPlate], MAX_REG_PLATE, VehicleData[impoundid][RegPlate]);
- ImpoundData[im][iVehType] = 1;
- ImpoundData[im][iFaction] = 0;
- break;
- }
- }
- new Float:health, panels, doors, lights, tires;
- GetVehicleHealth(impoundid, health);
- GetVehicleDamageStatus(impoundid, panels, doors, lights, tires);
- if(health < 250) health = 250;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET Impounded = 1, ImpoundedBy = %i, ImpoundTime = %i, ImpoundFee = %i, ImpoundReason = '%e', DamageHealth = %.2f, DamagePanels = %i, DamageDoors = %i, DamageLights = %i, DamageTires = %i WHERE id = %i",
- SQLID[playerid], impound_minutes, cashAmount, reason, health, panels, doors, lights, tires, VehicleData[impoundid][VehSQLID]);
- mysql_pquery(conn, mquery);
- if(VehicleData[impoundid][ForSale])
- {
- VehicleData[impoundid][ForSale] = false;
- VehicleData[impoundid][ForSalePrice] = 0;
- }
- if(VehicleData[impoundid][ForSaleLabel] != Text3D:INVALID_3DTEXT_ID) DestroyDynamic3DTextLabel(VehicleData[impoundid][ForSaleLabel]);
- VehicleData[impoundid][ForSaleLabel] = Text3D:INVALID_3DTEXT_ID;
- VehicleData[impoundid][IdVehicle] = 0;
- }
- else if(FVehicleData[vehicleid][FactionVehID] > 0)
- {
- FVehicleData[impoundid][FImpounded] = true;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE fveh SET Impounded = 1, ImpoundedBy = %i, ImpoundTime = %i, ImpoundFee = %i, ImpoundReason = '%e' WHERE id = %i",
- SQLID[playerid], impound_minutes, cashAmount, reason, FVehicleData[impoundid][FVSQLID]);
- mysql_pquery(conn, mquery);
- for(new im = 0, x = GetVehiclePoolSize(); im <= x; im++)
- {
- if(ImpoundData[im][iSQLID] < 1)
- {
- ImpoundData[im][iModel] = FVehicleData[impoundid][FVModel];
- ImpoundData[im][iSQLID] = FVehicleData[impoundid][FVSQLID];
- ImpoundData[im][iOwnerSQLID] = 0;
- ImpoundData[im][iImpoundedBy] = SQLID[playerid];
- ImpoundData[im][iImpoundFee] = cashAmount;
- ImpoundData[im][iImpoundTime] = impound_minutes;
- ImpoundData[im][iColor1] = FVehicleData[impoundid][FVCol1];
- ImpoundData[im][iColor2] = FVehicleData[impoundid][FVCol2];
- format(ImpoundData[im][iImpoundReason], 64, reason);
- format(ImpoundData[im][iRegPlate], MAX_REG_PLATE, FVehicleData[impoundid][FVRegPlate]);
- ImpoundData[im][iVehType] = 2;
- ImpoundData[im][iFaction] = FVehicleData[impoundid][FVFaction];
- break;
- }
- }
- }
- else return SysMsg(playerid, "Você não pode apreender este veículo.");
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "Você apreendeu o %s por %i horas (%i minutos) e aplicou $%i de multa.", GetVehicleName(impoundid), impoundHours, impound_minutes, cashAmount);
- SendClientMessageF(playerid, COLOR_LIGHTBLUE, "Motivo da apreenção: %s", reason);
- DetachTrailerFromVehicle(vehicleid);
- DestroyVehicleEx(impoundid, "impoundid");
- ClearVehicleData(impoundid);
- return true;
- }
- CMD:viewimpounds(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 3.0, 619.476257, -592.645996, 17.233013)) return SysMsg(playerid,"Você precisa estar na garagem do depósito. (Dillimore).");
- if(!IsCop(playerid)) return SysMsg(playerid,"Você precisa ser um oficial de aplicação da lei");
- ShowImpoundList(playerid, 0);
- return true;
- }
- //==================== Fim ==================================//
- //7 House commands e furniture
- //House commands
- CMD:light(playerid)
- {
- if(!Logged{playerid}) return true;
- if(IsInHouseID[playerid] == -1 && IsInBizzID[playerid] == -1) return SysMsg(playerid, "Você deve estar em uma casa ou empresa para usar esse comando.");
- new lighttype;
- if(IsInHouseID[playerid] != -1) lighttype = 1;
- else if(IsInBizzID[playerid] != -1) lighttype = 2;
- if(lighttype == 1)
- {
- new h = IsInHouseID[playerid];
- HouseData[h][HouseLights] = !HouseData[h][HouseLights];
- if(HouseData[h][HouseLights])
- {
- format(tgstr, sizeof(tgstr), "* %s pressiona o interruptor e liga a luz. *", NameRP(playerid));
- ProxDetector(20.0, playerid, tgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- foreach(new i: Player)
- {
- if(IsInHouseID[i] == h)
- {
- SetPlayerTime(i, 12, 0);
- }
- }
- }
- else
- {
- format(tgstr, sizeof(tgstr), "* %s pressiona o interruptor e desligar a luz. *", NameRP(playerid));
- ProxDetector(20.0, playerid, tgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- foreach(new i: Player)
- {
- if(IsInHouseID[i] == h)
- {
- SetPlayerTime(i, gServerHour, gServerMinute);
- }
- }
- }
- }
- else if(lighttype == 2)
- {
- new b = IsInBizzID[playerid];
- if(BizzData[b][BizzOwnerSQLID] != SQLID[playerid] && !IsBizzMod(playerid, b) && !IsPlayerAdmin(playerid)) return SysMsg(playerid, "Somente proprietários de empresas/Os gerentes podem usar esse comando.");
- BizzData[b][BizzLights] = !BizzData[b][BizzLights];
- if(BizzData[b][BizzLights])
- {
- format(tgstr, sizeof(tgstr), "* %s ressiona o interruptor e liga a luz. *", NameRP(playerid));
- ProxDetector(20.0, playerid, tgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- foreach(new i: Player)
- {
- if(IsInBizzID[i] == b)
- {
- SetPlayerTime(i, 12, 0);
- }
- }
- }
- else
- {
- format(tgstr, sizeof(tgstr), "* %s ressiona o interruptor e desliga a luz. *", NameRP(playerid));
- ProxDetector(20.0, playerid, tgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- foreach(new i: Player)
- {
- if(IsInBizzID[i] == b)
- {
- SetPlayerTime(i, gServerHour, gServerMinute);
- }
- }
- }
- }
- return true;
- }
- CMD:comprarcasa(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerHouseCount(playerid) >= MAX_HOUSE_PER_PLAYER) return SysMsg(playerid,"Você não pode ter mais casas.");
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid,1.0,HouseData[h][oPosX],HouseData[h][oPosY],HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- if(HouseData[h][HouseOwnerSQLID] == 0)
- {
- if(Cash[playerid] < HouseData[h][HousePrice]) return SysMsg(playerid,"Você não tem dinheiro suficiente para comprar esta casa.");
- HouseData[h][HouseOwnerSQLID] = SQLID[playerid];
- HasHouseKey[playerid][0] = -1;
- HasHouseKey[playerid][1] = -1;
- ProcessHouseKey(playerid);
- if(HasHouseKey[playerid][0] == h) SpawnAtHouse[playerid] = 0;
- else if(HasHouseKey[playerid][1] == h) SpawnAtHouse[playerid] = 1;
- MySpawnID[playerid] = 3;
- GivePlayerCash(playerid, -HouseData[h][HousePrice]);
- mysql_pqueryf(conn, "UPDATE players SET GuestHouseID = 0 WHERE GuestHouseID = %i", HouseData[h][HouseSQLID]);
- mysql_pqueryf(conn, "UPDATE houses SET OwnerSQLID = %i WHERE id = %i", SQLID[playerid], HouseData[h][HouseSQLID]);
- mysql_pqueryf(conn, "UPDATE players SET MySpawnID = %i, SpawnAtHouse = %i WHERE id = %i", MySpawnID[playerid], SpawnAtHouse[playerid], SQLID[playerid]);
- foreach(new i: Player) if(HouseData[h][HouseSQLID] == GuestHouseID[i]) GuestHouseID[i] = 0;
- SendClientMessageF(playerid,COLOR_GOLD, "Você comprou %s por $%s.",HouseData[h][HouseDescription],format_cash(HouseData[h][HousePrice]));
- ShowInfoText(playerid,"~w~PROPRIEDADE ADQUIRIDA",5000);
- UpdateHousePickup(h);
- UnlockAchievement(playerid, 9);
- break;
- }
- else if(HouseData[h][HouseOwnerSQLID] == -5) return SysMsg(playerid,"Esta propriedade está atualmente nas mãos da Silver Trading, confira lá para ver se está à venda.");
- else return SysMsg(playerid,"Esta propriedade já foi comprada.");
- }
- }
- return true;
- }
- CMD:sellmyhouse(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerHouseCount(playerid) == 0) return SysMsg(playerid,"Você não tem casa para vender.");
- new id, conf[8];
- if(sscanf(params, "is[8]", id, conf))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "CASA ID: %i - %s ($%s)", x, HouseData[HasHouseKey[playerid][x]][HouseDescription], format_cash(HouseData[HasHouseKey[playerid][x]][HousePrice] / 2));
- }
- }
- return SendClientMessage(playerid, COLOR_WHITE, "Use '/vendermyhouse [ID de cima] confirmar' se você deseja vender sua casa.");
- }
- if(HasHouseKey[playerid][id] == -1) return SysMsg(playerid, "Você não tem uma casa neste slot.");
- if(id != 0 && id != 1) return SysMsg(playerid, "ID de casa inválido.");
- if(strmatch(conf, "confirmar"))
- {
- new h = HasHouseKey[playerid][id];
- if(!IsPlayerInRangeOfPoint(playerid, 4.5, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ])) return SysMsg(playerid, "Você não está em sua casa.");
- new houseValue = HouseData[h][HousePrice] / 2;
- HouseData[h][HouseOwnerSQLID] = 0;
- HouseData[h][HouseLocked] = 0;
- HasHouseKey[playerid][0] = -1;
- HasHouseKey[playerid][1] = -1;
- ProcessHouseKey(playerid);
- SpawnAtHouse[playerid] = 0;
- if(MySpawnID[playerid] == 3)
- {
- MySpawnID[playerid] = 1;
- MySQLUpdateInt(SQLID[playerid], "MySpawnID", MySpawnID[playerid], "players");
- }
- GivePlayerCash(playerid, houseValue);
- MySQLUpdateInt(HouseData[h][HouseSQLID], "OwnerSQLID", HouseData[h][HouseOwnerSQLID], "houses");
- format(gstr, sizeof(gstr),"Você vendeu sua casa (%s) por $%s.",HouseData[h][HouseDescription],format_cash(houseValue));
- SendClientMessage(playerid,COLOR_GOLD,gstr);
- ShowInfoText(playerid,"~w~PROPRIEDADE VENDIDA",5000);
- SendClientMessage(playerid,COLOR_GOLD,"Todos os convidados da sua casa (caso existam) foram despejados.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET GuestHouseID = 0 WHERE GuestHouseID = %i", HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET SpawnAtHouse = 0 WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- foreach(new i: Player) if(HouseData[h][HouseSQLID] == GuestHouseID[i]) GuestHouseID[i] = 0;
- UpdateHousePickup(h);
- }
- return true;
- }
- CMD:movein(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerHouseCount(playerid) == 0) return SysMsg(playerid,"Você não tem uma casa.");
- new playa = -1, id;
- if(sscanf(params, "iu", id, playa))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", x, HouseData[HasHouseKey[playerid][x]][HouseDescription]);
- }
- }
- return SysMsg(playerid,"Use: /movein [Casa ID de cima] [ID ou nome do jogador]");
- }
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(playa == playerid) return SysMsg(playerid,"Você não pode fazer isso em si mesmo.");
- if(id != 0 && id != 1) return SysMsg(playerid, "Casa ID inválida.");
- if(HasHouseKey[playerid][id] == -1) return SysMsg(playerid, "Você não tem uma casa neste slot.");
- if(!IsPlayerInRangeOfPoint(playerid,5.0, PlayerPosX(playa), PlayerPosY(playa), PlayerPosZ(playa))) return SysMsg(playerid,"Você deve estar perto do jogador para convidá-los a se mudarem.");
- OfferedMoveinFrom[playa][0] = playerid;
- OfferedMoveinFrom[playa][1] = id;
- SendClientMessageF(playa, COLOR_WHITE, "%s está oferecendo você para se mudar para sua casa (%s). Use '/aceitar mudança' para confirmar.", NameEx(playerid), HouseData[HasHouseKey[playerid][id]][HouseDescription]);
- if(GuestHouseID[playa] >= 1) SendClientMessage(playa, COLOR_WHITE, "Nota: Como convidado, você só pode ficar em uma casa por vez, então mudar para esta casa irá expulsá-lo da sua outra casa.");
- SendClientMessageF(playerid, COLOR_WHITE, "Você ofereceu %s para entrar em sua casa (%s). Espere o mesmo aceitar a proposta.", NameEx(playa), HouseData[HasHouseKey[playerid][id]][HouseDescription]);
- return true;
- }
- CMD:moveout(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new ghouse = IsHouseGuest(playerid);
- if(ghouse == 0) return SysMsg(playerid,"Você não está morando na casa de outra pessoa.");
- if(HouseData[ghouse][HouseSQLID] == GuestHouseID[playerid])
- {
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET GuestHouseID = 0 WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- GuestHouseID[playerid] = 0;
- }
- if(MySpawnID[playerid] == 5)
- {
- MySpawnID[playerid] = 1;
- MySQLUpdateInt(SQLID[playerid], "MySpawnID", MySpawnID[playerid], "players");
- }
- SendClientMessageF(playerid,COLOR_GOLD,"Você se mudou para fora %s.", HouseData[ghouse][HouseDescription]);
- foreach(new i: Player)
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[i][x] == ghouse && Logged{i})
- {
- SendClientMessageF(i, COLOR_WHITE, "%s acabou de sair de sua casa. (%s)", NameEx(playerid), HouseData[ghouse][HouseDescription]);
- return true;
- }
- }
- }
- return true;
- }
- CMD:evictguest(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerHouseCount(playerid) == 0) return SysMsg(playerid, "Você não tem uma casa.");
- new id, guest[MAX_PLAYER_NAME + 1];
- if(sscanf(params, "is[25]", id, guest))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", x, HouseData[HasHouseKey[playerid][x]][HouseDescription]);
- }
- }
- return SysMsg(playerid, "Use: /evictguest [Casa ID de cima] [Nome_Sobrenome] (use /vervisitante para descobrir quem fica em sua casa)");
- }
- if(id != 0 && id != 1) return SysMsg(playerid, "Casa inválida.");
- if(HasHouseKey[playerid][id] == -1) return SysMsg(playerid, "Você não tem uma casa nesse slot.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id,GuestHouseID FROM players WHERE Name = '%e'", guest);
- mysql_pquery(conn, mquery, "ProcessGuestEviction", "ii", playerid, HasHouseKey[playerid][id]);
- return true;
- }
- CMD:housemusic(playerid, params[])
- {
- if(IsInHouseID[playerid] == -1) return SysMsg(playerid, "Você deve estar em uma casa.");
- if(IsHouseOwner(playerid, IsInHouseID[playerid]) || IsInHouseID[playerid] == IsHouseGuest(playerid))
- {
- new musicLink[200];
- if(sscanf(params, "s[200]", musicLink)) return SysMsg(playerid, "Use: /housemusic [link/stop]");
- new h = IsInHouseID[playerid];
- if(strcmp(musicLink, "stop") == 0)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && IsInHouseID[i] == h)
- {
- StopAudioStreamForPlayer(i);
- }
- }
- HouseData[h][HMusicPlaying] = 0;
- HouseData[h][HMusic][0] = EOS;
- }
- else
- {
- foreach(new i: Player)
- {
- if(Logged{i} && IsInHouseID[i] == h)
- {
- PlayAudioStreamForPlayerEx(i, musicLink);
- ListeningBoom[i] = -1;
- }
- }
- format(HouseData[h][HMusic], 200, musicLink);
- HouseData[h][HMusicPlaying] = 1;
- }
- return true;
- }
- else SysMsg(playerid,"Você deve estar em sua própria casa.");
- return true;
- }
- CMD:housestore(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInHouseID[playerid] == -1) return SysMsg(playerid, "Você deve estar em uma casa.");
- new item[10], itemname[20], amount, h = IsInHouseID[playerid];
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid])
- {
- if(sscanf(params, "s[10]S()[20]", item)) return SysMsg(playerid,"Use: /housestore [item] [quantidade/nome] - Itens: Dinheiro, Arma, Marijuana, Cocaina, MoonShine, Colete, Celular");
- if(strcmp("dinheiro", item, true) == 0 || strcmp("Money", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /housestore dinheiro [quantidade $]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"A quantidade de caixa deve ser superior a zero.");
- if(amount > Cash[playerid]) return SysMsg(playerid,"Você não tem tanto dinheiro para armazenar.");
- HouseData[h][StoredCash] += amount;
- GivePlayerCash(playerid, -amount);
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredCash", HouseData[h][StoredCash], "houses");
- format(gstr, sizeof(gstr),"* %s armazena algum dinheiro em sua casa.",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você armazenou $%s na sua casa.", format_cash(amount));
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- format(gstr, sizeof(gstr),"[%s] %s(%i) colocou $%i na identificação na casa ID %i. (Total: $%i)", GetServerTimeString(), NameEx(playerid), playerid, amount, h, Cash[playerid]);
- AddToLog("cash", gstr);
- return true;
- }
- if(strcmp("arma", item, true) == 0 || strcmp("Gun", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /housestore arma [nome da arma]");
- new wid = GetWeaponIdFromName(itemname);
- if(wid == -1) return SysMsg(playerid,"Nome da arma inválido.");
- if(wid < 1 || wid > 47) return SysMsg(playerid,"Arma inválida.");
- if(wid == 19 || wid == 20 || wid == 21) return SysMsg(playerid,"Arma inválida.");
- new Slot = GetWeaponSlot(wid);
- if(WeaponData[playerid][Slot][Weapon] != wid) return SysMsg(playerid,"Você não possui essa arma.");
- if(WeaponData[playerid][Slot][WeaponOrigin] == 3) return SysMsg(playerid, "Você não pode armazenar armas de facção em sua casa.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM weapons WHERE HouseID = %i AND Deleted = 0 AND Dropped = 0", HouseData[h][HouseSQLID]);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows() >= 10) return SysMsg(playerid, "Não há mais espaço na sua casa para armas.");
- cache_delete(result);
- new ammo = WeaponData[playerid][Slot][WeaponAmmo];
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET WeaponPossession = 0, HouseID = %i, WeaponAmmo = %i WHERE id = %i", HouseData[h][HouseSQLID], WeaponData[playerid][Slot][WeaponAmmo], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- ResetWeaponVariables(playerid, 0, Slot);
- SetPlayerArmedWeapon(playerid, 0);
- SyncPlayerWeapons(playerid);
- format(gstr, sizeof(gstr),"* %s guardar uma %s em sua arma. *",NameRP(playerid),GetWeaponNameFromID(wid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você armazenou uma %s com %i munição em sua casa.",GetWeaponNameFromID(wid), ammo);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("marijuana", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /housestore marijuana [Quantidade]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"A quantidade de marijuana deve ser maior que zero.");
- if(amount > Inventory[playerid][Weed]) return SysMsg(playerid,"Você não tem muito marijuana para armazenar.");
- HouseData[h][StoredWeed] += amount;
- Inventory[playerid][Weed] -= amount;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredWeed", HouseData[h][StoredWeed], "houses");
- MySQLUpdateInt(SQLID[playerid], "Weed", Inventory[playerid][Weed], "players");
- format(gstr, sizeof(gstr),"* %s armazena algumas marijuana em sua casa.",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você armazenou %ig de marijuana em sua casa. Agora você tem %ig no seu inventário.", amount, Inventory[playerid][Weed]);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("Cocaina", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /housestore cocaina [Quantidade]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"A quantidade de cocaína deve ser maior que zero.");
- if(amount > Inventory[playerid][Cocaine]) return SysMsg(playerid,"Você não tem muita cocaína para armazenar.");
- HouseData[h][StoredCocaine] += amount;
- Inventory[playerid][Cocaine] -= amount;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredCocaine", HouseData[h][StoredCocaine], "houses");
- MySQLUpdateInt(SQLID[playerid], "Cocaine", Inventory[playerid][Cocaine], "players");
- format(gstr, sizeof(gstr),"* %s armazena alguma cocaína em sua casa.",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você armazenou %ig de cocaína em sua casa. Agora você tem %ig no seu inventário.", amount, Inventory[playerid][Cocaine]);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("MoonShine", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /housestore MoonShine [Quantidade]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"A quantidade de MoonShine deve ser maior que zero.");
- if(amount > Inventory[playerid][MoonShine]) return SysMsg(playerid,"Você não tem tanto MoonShine para armazenar.");
- HouseData[h][StoredMoonShine] += amount;
- Inventory[playerid][MoonShine] -= amount;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredMoonShine", HouseData[h][StoredMoonShine], "houses");
- MySQLUpdateInt(SQLID[playerid], "MoonShine", Inventory[playerid][MoonShine], "players");
- format(gstr, sizeof(gstr),"* %s armazena algum MoonShine em sua casa.",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você armazenou %i L de MoonShine em sua casa. Agora você tem %i L no seu inventário.", amount, Inventory[playerid][MoonShine]);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("colete", item, true) == 0 || strcmp("armor", item, true) == 0)
- {
- new Float:carmour;
- GetPlayerArmour(playerid, carmour);
- if(VestType[playerid] == 0 || carmour == 0) return SysMsg(playerid, "Você não possui colete.");
- if(RestrictedVest{playerid}) return SysMsg(playerid, "Você não pode armazenar este colete em sua casa.");
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO storedarmor (ArmorType, ArmorAmount, HouseID) VALUES (%i, %f, %i)", VestType[playerid], carmour, HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s armazena um colete em sua casa.",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(VestType[playerid] == 1) SendClientMessageF(playerid, COLOR_LIGHTRED, "Você armazenou um colete leve em sua casa.");
- else SendClientMessage(playerid, COLOR_LIGHTRED, "Você armazenou um colete pesado em sua casa.");
- SetPlayerArmourEx(playerid, 0.0, 1);
- VestType[playerid] = 0;
- return true;
- }
- if(strcmp("phone", item, true) == 0 || strcmp("celular", item, true) == 0 || strcmp("telefone", item, true) == 0)
- {
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid, "Você não tem um celular.");
- if(IsPhoneRinging[playerid] == 1) return SysMsg(playerid,"Você não pode armazenar seu celular enquanto toca.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você não pode armazenar seu celular enquanto você o está usando.");
- new phone = PhoneData[playerid][pID];
- HouseData[h][StoredPhone] = phone;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE houses SET StoredPhone = %i WHERE id = %i", phone, HouseData[h][HouseSQLID]);
- mysql_tquery(conn, mquery);
- ClearPhoneData(playerid);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossession = 0 WHERE id = %i", phone);
- mysql_tquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s armazena um celular em sua casa. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid,COLOR_LIGHTRED, "Você armazenou seu celular em sua casa.");
- return true;
- }
- }
- else return SysMsg(playerid, "Você não está em sua própria casa.");
- return true;
- }
- CMD:houseget(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInHouseID[playerid] == -1) return SysMsg(playerid,"Você deve estar em sua própria casa.");
- new item[10], itemname[20], amount, h = IsInHouseID[playerid];
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid])
- {
- if(sscanf(params, "s[10]S()[20]", item, itemname)) return SysMsg(playerid,"Use: /houseget [item] [quantidade/nome] - Itens: Dinheiro, Armas, Marijuana, Cocaina, Moonshine, Colete, Celular");
- if(strcmp("dinheiro", item, true) == 0 || strcmp("Money", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /houseget dinheiro [quantidade $]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"A quantidade de caixa deve ser superior a zero.");
- if(amount > HouseData[h][StoredCash]) return SysMsg(playerid,"Você não tem tanto dinheiro armazenado na casa.");
- HouseData[h][StoredCash] -= amount;
- GivePlayerCash(playerid, amount);
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredCash", HouseData[h][StoredCash], "houses");
- format(gstr, sizeof(gstr),"* %s pega algum dinheiro de sua casa. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você pegou $%s da sua casa.", format_cash(amount));
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- format(gstr, sizeof(gstr),"[%s] %s(%i) pegou $%i da sua casa ID %i. (Total: $%i)", GetServerTimeString(), NameEx(playerid), playerid, amount, h, Cash[playerid]);
- AddToLog("cash", gstr);
- return true;
- }
- if(strcmp("arma", item, true) == 0 || strcmp("Gun", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /houseget arma [nome da arma]");
- new wid = GetWeaponIdFromName(itemname);
- if(wid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(wid < 1 || wid > 47) return SysMsg(playerid,"Arma inválida.");
- if(wid == 19 || wid == 20 || wid == 21) return SysMsg(playerid,"Arma inválida.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM weapons WHERE WeaponID = %i AND HouseID = %i AND Deleted = 0 AND Dropped = 0", wid, HouseData[h][HouseSQLID]);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows() == 0)
- {
- SysMsg(playerid, "Essa arma não está armazenada em sua casa.");
- cache_delete(result);
- return true;
- }
- if(!WeaponCheck(playerid, wid)) return SysMsg(playerid, "Você não pode pegar essa arma.");
- new Slot = GetWeaponSlot(wid);
- if(WeaponData[playerid][Slot][Weapon] == wid) return SysMsg(playerid,"Você já possui essa arma.");
- if(cache_num_rows())
- {
- WeaponData[playerid][Slot][WeaponID] = cache_get_field_content_int(0, "id");
- WeaponData[playerid][Slot][WeaponTimestamp] = cache_get_field_content_int(0, "Timestamp");
- WeaponData[playerid][Slot][wCreatorSQLID] = cache_get_field_content_int(0, "CreatorSQLID");
- WeaponData[playerid][Slot][Weapon] = cache_get_field_content_int(0, "WeaponID");
- WeaponData[playerid][Slot][wOwnerSQLID] = cache_get_field_content_int(0, "OwnerSQLID");
- WeaponData[playerid][Slot][WeaponAmmo] = cache_get_field_content_int(0, "WeaponAmmo");
- WeaponData[playerid][Slot][WeaponType] = GetWeaponType(WeaponData[playerid][Slot][Weapon]);
- WeaponData[playerid][Slot][WeaponOrigin] = cache_get_field_content_int(0, "WeaponOrigin");
- WeaponData[playerid][Slot][WeaponPossession] = cache_get_field_content_int(0, "WeaponPossession");
- }
- cache_delete(result);
- SyncPlayerWeapons(playerid);
- SetPlayerArmedWeapon(playerid, wid);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET WeaponPossession = 1, HouseID = -1, OwnerSQLID = %i WHERE id = %i", SQLID[playerid], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s pegou uma %s de sua casa. *",NameRP(playerid),GetWeaponNameFromID(wid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você pegou uma %s com %i munições da sua arma.",GetWeaponNameFromID(wid), WeaponData[playerid][Slot][WeaponAmmo]);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("marijuana", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /houseget marijuana [Quantidade]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"A quantidade de erva daninha deve ser maior que zero.");
- if(amount > HouseData[h][StoredWeed]) return SysMsg(playerid,"Você não tem muita Weed armazenada na casa.");
- if(Inventory[playerid][Weed] + amount > DRUG_MAX_WEED) return SysMsg(playerid,"Você não pode carregar tanto Weed.");
- HouseData[h][StoredWeed] -= amount;
- Inventory[playerid][Weed] += amount;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredWeed", HouseData[h][StoredWeed], "houses");
- MySQLUpdateInt(SQLID[playerid], "Weed", Inventory[playerid][Weed], "players");
- format(gstr, sizeof(gstr),"* %s pega algumas gramas de Marijuana da sua casa *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você pegou %ig de marijuana de sua casa. Agora você tem %ig no seu inventário.", amount, Inventory[playerid][Weed]);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("Cocaina", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /houseget cocaina [Quantidade]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"A quantidade de cocaína deve ser superior a zero.");
- if(amount > HouseData[h][StoredCocaine]) return SysMsg(playerid,"Você não tem muita cocaína armazenada na casa.");
- if(Inventory[playerid][Cocaine] + amount > DRUG_MAX_COCAINE) return SysMsg(playerid,"Você não pode carregar muita Cocaína.");
- HouseData[h][StoredCocaine] -= amount;
- Inventory[playerid][Cocaine] += amount;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredCocaine", HouseData[h][StoredCocaine], "houses");
- MySQLUpdateInt(SQLID[playerid], "Cocaine", Inventory[playerid][Cocaine], "players");
- format(gstr, sizeof(gstr),"* %s pega um pouco de cocaina de sua casa. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você pegou %ig de cocaína da sua casa. Você agora tem %ig no seu inventário.", amount, Inventory[playerid][Cocaine]);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("MoonShine", item, true) == 0)
- {
- if(sscanf(params, "s[10]s[20]", item, itemname)) return SysMsg(playerid,"Use: /houseget MoonShine [Quantidade]");
- if(!IsNumeric(itemname)) return SysMsg(playerid,"O valor deve ser um número.");
- amount = strval(itemname);
- if(amount < 1) return SysMsg(playerid,"Quantidade de aguardente deve ser maior que zero.");
- if(amount > HouseData[h][StoredMoonShine]) return SysMsg(playerid,"Você não tem essa quantidade de MoonShine guardado na casa.");
- if(Inventory[playerid][MoonShine] + amount > DRUG_MAX_MOONSHINE) return SysMsg(playerid,"Você não pode carregar tanta MoonShine.");
- HouseData[h][StoredMoonShine] -= amount;
- Inventory[playerid][MoonShine] += amount;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "StoredMoonShine", HouseData[h][StoredMoonShine], "houses");
- MySQLUpdateInt(SQLID[playerid], "MoonShine", Inventory[playerid][MoonShine], "players");
- format(gstr, sizeof(gstr),"* %s pega algum litro de MoonShine de sua casa. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você pegou %i L de MoonShine da sua casa. Você agora tem %i L no seu inventário.", amount, Inventory[playerid][MoonShine]);
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- return true;
- }
- if(strcmp("colete", item, true) == 0 || strcmp("armor", item, true) == 0)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id, ArmorType, ArmorAmount FROM storedarmor WHERE HouseID = %i", HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery, "ShowStoredArmor", "dd", playerid, 1);
- return true;
- }
- if(strcmp("phone", item, true) == 0 || strcmp("celular", item, true) == 0 || strcmp("telefone", item, true) == 0)
- {
- if(Inventory[playerid][MobilePhone] == 1) return SysMsg(playerid, "Você já tem um celular em seu inventário.");
- if(HouseData[h][StoredPhone] == 0) return SysMsg(playerid, "Esta casa não tem um celular armazenado nele");
- format(gstr, sizeof(gstr),"* %s pega um celular de sua casa. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid,COLOR_LIGHTRED, "Você tirou um celular de sua casa.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossession = 1, PhonePossessor = %i WHERE id = %i", SQLID[playerid], HouseData[h][StoredPhone]);
- mysql_tquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE houses SET StoredPhone = 0 WHERE id = %i", HouseData[h][HouseSQLID]);
- mysql_tquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM phones WHERE id = %i AND PhonePossession = 1", HouseData[h][StoredPhone]);
- mysql_tquery(conn, mquery, "LoadPlayerPhone", "d", playerid);
- HouseData[h][StoredPhone] = 0;
- return true;
- }
- }
- else return SysMsg(playerid, "You are not in your house.");
- return true;
- }
- CMD:houseview(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInHouseID[playerid] == -1) return SysMsg(playerid,"Você deve estar em sua própria casa.");
- new h = IsInHouseID[playerid];
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid])
- {
- SendClientMessageF(playerid, COLOR_LIGHTGREEN, "Inventário da casa: $%s, %ig marijuana, %ig cocaina, %iL moonshine", format_cash(HouseData[h][StoredCash]), HouseData[h][StoredWeed], HouseData[h][StoredCocaine], HouseData[h][StoredMoonShine]);
- if(HouseData[h][StoredPhone] >= 1) SendClientMessage(playerid, COLOR_LIGHTGREEN, "Existe um telefone celular armazenado nesta casa.");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "Use /houseviewguns para ver as armas dentro de sua casa. Use /houseget colete para ver o colete em sua casa.");
- return true;
- }
- SysMsg(playerid, "Você não está em sua casa.");
- return true;
- }
- CMD:houseviewguns(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInHouseID[playerid] == -1) return SysMsg(playerid,"Você deve estar em sua própria casa.");
- new h = IsInHouseID[playerid];
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid])
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id,WeaponID,WeaponAmmo FROM weapons WHERE WeaponPossession = 0 AND HouseID = %i AND Deleted = 0 AND TrunkID = -1 AND FCarID = -1 AND Dropped = 0", HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery, "ShowHouseGuns", "d", playerid);
- return true;
- }
- else SysMsg(playerid, "Você não está em sua casa.");
- return true;
- }
- //House furniture commands
- CMD:guestfurnish(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerHouseCount(playerid) == 0) return SysMsg(playerid, "Você não possui uma casa.");
- new id, playa = -1;
- if(sscanf(params, "iu", id, playa))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", x, HouseData[HasHouseKey[playerid][x]][HouseDescription]);
- }
- }
- return SysMsg(playerid, "Use: /guestfurnish [Casa ID] [ID ou nome do jogador]");
- }
- if(playa == playerid) return SysMsg(playerid, "Não pode ser você mesmo.");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(id != 0 && id != 1) return SysMsg(playerid, "Casa inválida.");
- if(HasHouseKey[playerid][id] == -1) return SysMsg(playerid, "Você não tem uma casa neste slot.");
- if(EditingHouseFurn[playa] != -1) return SysMsg(playerid, "Este jogador já está fornecendo uma casa.");
- new h = HasHouseKey[playerid][id];
- EditingHouseFurn[playa] = HouseData[h][HouseSQLID];
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET GuestFurnish = %i WHERE id = %i", HouseData[h][HouseSQLID], SQLID[playa]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu a %s acesso para mecher nos móveis de sua casa. (%s)", NameEx(playa), HouseData[h][HouseDescription]);
- SendClientMessageF(playa, COLOR_WHITE, "%s lhe deu acesso para usar móveis de sua casa. (%s)", NameEx(playerid), HouseData[h][HouseDescription]);
- SendClientMessage(playa, COLOR_WHITE, "Você pode remover seu acesso a qualquer momento usando /stopguestfurnish.");
- return true;
- }
- CMD:grantfurnish(playerid, params[]) return cmd_guestfurnish(playerid, params);
- CMD:stopguestfurnish(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(EditingHouseFurn[playerid] == -1) return SysMsg(playerid, "Você não está editando a mobília da casa de outra casa.");
- SendClientMessageF(playerid, COLOR_WHITE, "Você não tem mais acesso a mobiliário de %s.", HouseData[GetHouseArrayFromID(EditingHouseFurn[playerid])][HouseDescription]);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET GuestFurnish = -1 WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- EditingHouseFurn[playerid] = -1;
- return true;
- }
- CMD:revokefurnish(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerHouseCount(playerid) == 0) return SysMsg(playerid,"Você não tem uma casa.");
- new id, name[MAX_PLAYER_NAME+1];
- if(sscanf(params, "is[25]", id, name))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", x, HouseData[HasHouseKey[playerid][x]][HouseDescription]);
- }
- }
- return SysMsg(playerid, "Use: /revokefurnish [Casa ID de cima] [Nome_Sobrenome] *use /viewguestfurnishers para ver os convidados atuais.*");
- }
- if(id != 0 && id != 1) return SysMsg(playerid, "Casa inválida.");
- if(HasHouseKey[playerid][id] == -1) return SysMsg(playerid, "Você não tem uma casa neste slot.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id,Online FROM players WHERE Name = '%e' AND GuestFurnish = %i", name, HouseData[HasHouseKey[playerid][id]][HouseSQLID]);
- mysql_pquery(conn, mquery, "ProcessFurnishRevoke", "iis", playerid, id, name);
- return true;
- }
- GREENSIDE::ProcessFurnishRevoke(playerid, houseid, name[])
- {
- if(!cache_num_rows()) return SysMsg(playerid, "Este usuário não possui acesso de móveis em sua casa.");
- new id, online;
- id = cache_get_field_content_int(0, "id");
- online = cache_get_field_content_int(0, "Online");
- if(online == 1)
- {
- foreach(new i: Player)
- {
- if(SQLID[i] == id)
- {
- EditingHouseFurn[i] = -1;
- SendClientMessageF(i, COLOR_WHITE, "%s revogou sua permissão para editar seus móveis de casa. (%s)", NameEx(playerid), HouseData[houseid][HouseDescription]);
- }
- }
- }
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET GuestFurnish = -1 WHERE id = %i", id);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_WHITE, "Você revogou a edição de %s para gerênciar os furnitures de sua casa.", name);
- return true;
- }
- CMD:viewguestfurnishers(playerid, params[])
- {
- if(isnull(params) || !IsNumeric(params))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", x, HouseData[HasHouseKey[playerid][x]][HouseDescription]);
- }
- }
- return SysMsg(playerid, "Use: /viewguestfurnishers [Casa ID de cima]");
- }
- if(strval(params) != 0 && strval(params) != 1) return SysMsg(playerid, "Casa inválida.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT Name FROM players WHERE GuestFurnish = %i", HouseData[HasHouseKey[playerid][strval(params)]][HouseSQLID]);
- mysql_pquery(conn, mquery, "ViewHouseFurnishers", "i", playerid);
- return true;
- }
- GREENSIDE::ViewHouseFurnishers(playerid)
- {
- if(!cache_num_rows()) return SysMsg(playerid, "Não há ninguem com acesso de mecher nos móveis de sua casa.");
- gstr[0] = EOS;
- new name[MAX_PLAYER_NAME+1];
- for(new i = 0, x = cache_num_rows(); i < x; i++)
- {
- cache_get_field_content(i, "Nome", name);
- format(tgstr, sizeof(tgstr), "%s\n", name);
- strcat(gstr, tgstr);
- }
- Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_LIST, "Mobiliário", gstr, "Pronto!", "");
- return true;
- }
- CMD:payfurn(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params) || IsNumeric(params)) return SysMsg(playerid, "Use: /pagarfurn ['Dinheiro' ou 'Banco'] *Isso mudará de onde você será cobrado quando comprar novos móveis.*");
- if(strcmp("banco", params, true) == 0)
- {
- BuyFurnFrom[playerid] = 0;
- SysMsg(playerid, "Money will now be taken from your bank account when you purchase furniture.");
- }
- else if(strcmp("dinheiro", params, true) == 0)
- {
- BuyFurnFrom[playerid] = 1;
- SysMsg(playerid, "O dinheiro agora será retirado do seu dinheiro em mãos quando comprar móveis.");
- }
- else cmd_payfurn(playerid, "");
- return true;
- }
- CMD:searchf(playerid, params[])
- {
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid, "Você deve estar dentro de sua própria casa para usar esse comando.");
- if(BuyFurnFrom[playerid] == -1) return SysMsg(playerid, "Você não definiu a partir do qual gostaria de tirar dinheiro para comprar móveis. Por favor, use /pagarfurn para definir isso.");
- if(GetFreeHouseFurnitureForHouse(playerid) >= GetMaxFurnitureForPlayer(playerid)) return SysMsgF(playerid, "Você atingiu seu limite de mobiliário de %i e não pode comprar mais.", GetMaxFurnitureForPlayer(playerid));
- if(PlayerBuyFurniture[playerid][0] != INVALID_OBJECT_ID || PlayerPlaceFurniture[playerid] != INVALID_OBJECT_ID) return SysMsg(playerid, "Você já está editando um objeto.");
- if(isnull(params)) return SysMsg(playerid, "Use: /searchf [item name]");
- new results;
- gstr[0] = EOS;
- strcat(gstr, "Nome da mobília\tValor\n");
- for(new x = 0; x < MAX_FURNITURE; x++)
- {
- if(strfind(FurniData[x][fuName], params, true) != -1)
- {
- format(gstr, sizeof(gstr), "%s%s\t$%s\n", gstr, FurniData[x][fuName], format_cash(FurniData[x][fPrice]));
- results ++;
- }
- }
- if(results != 0) Dialog_Show(playerid, FurniturePurchase3, DIALOG_STYLE_TABLIST_HEADERS, "Compre móveis", gstr, "Selecionar", "Cancelar");
- else SysMsg(playerid, "Não foi possível encontrar nenhum objeto com esse nome");
- return true;
- }
- CMD:buyf(playerid, params[])
- {
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid, "Você deve estar dentro de sua própria casa para usar esse comando.");
- if(BuyFurnFrom[playerid] == -1) return SysMsg(playerid, "Você não definiu a partir do qual gostaria de tirar dinheiro para comprar móveis. Por favor, use /pagarfurn para definir isso.");
- if(GetFreeHouseFurnitureForHouse(playerid) >= GetMaxFurnitureForPlayer(playerid)) return SysMsgF(playerid, "Você atingiu seu limite de mobiliário de %i e não pode comprar mais.",GetMaxFurnitureForPlayer(playerid));
- if(PlayerBuyFurniture[playerid][0] != INVALID_OBJECT_ID || PlayerPlaceFurniture[playerid] != INVALID_OBJECT_ID) return SysMsg(playerid, "Você já está editando um objeto.");
- if(isnull(params)) return Dialog_Show(playerid, FurniturePurchase, DIALOG_STYLE_LIST, "Selecione uma categoria de mobiliário", GetHouseCategoryList(), "Selecionar", "Cancelar");
- for(new x = 0; x < MAX_FURNITURE; x++)
- {
- if(strmatch(FurniData[x][fuName], params))
- {
- if(BuyFurnFrom[playerid] == 1)
- {
- if(Cash[playerid] < FurniData[x][fPrice]) return SysMsg(playerid, "Você não tem o dinheiro necessário para este item.");
- }
- else
- {
- if(BankBalance[playerid] < FurniData[x][fPrice]) return SysMsg(playerid, "Você não tem o dinheiro necessário para este item.");
- }
- for(new slot = 0; slot < GetMaxFurnitureForPlayer(playerid); slot++)
- {
- if(HouseData[IsInHouseID[playerid]][FurnModel][slot] == 0)
- {
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO hfurniture (Model,Placed,Xpos,Ypos,Zpos,Xrot,Yrot,Zrot,HouseSQLID) VALUES (%i,0,0.0,0.0,0.0,0.0,0.0,0.0,%i)",
- FurniData[x][fModel], HouseData[IsInHouseID[playerid]][HouseSQLID]);
- mysql_pquery(conn, mquery, "InsertHouseFurni", "dd", playerid, slot);
- new h = IsInHouseID[playerid];
- HouseData[h][FurnObject][slot] = 0;
- HouseData[h][FurnModel][slot] = FurniData[x][fModel];
- HouseData[h][FurnPlaced][slot] = 0;
- if(BuyFurnFrom[playerid] == 0) //take money from the player's bank
- {
- BankBalance[playerid] -= FurniData[x][fPrice];
- mysql_pqueryf(conn, "UPDATE players SET Bank = %i WHERE id = %i", BankBalance[playerid], SQLID[playerid]);
- }
- else GivePlayerCash(playerid, -FurniData[x][fPrice]); //take money from their wallet.
- break;
- }
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Você comprou um {BCDCBC}%s{FFFFFF} por {BCDCBC}$%i{FFFFFF}.", params, FurniData[x][fPrice]);
- return true;
- }
- }
- SysMsg(playerid, "Não foi possível encontrar um objeto de mobília com esse nome.");
- return true;
- }
- CMD:selectf(playerid, params[]) return cmd_selectfurniture(playerid, params);
- CMD:selectfurniture(playerid, params[])
- {
- if(!Logged{playerid} || PlayerBuyFurniture[playerid][0] != INVALID_OBJECT_ID) return true;
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid,"Você deve estar em sua própria casa para usar esse recurso.");
- SelectObject(playerid);
- return true;
- }
- CMD:sfl(playerid, params[]) return cmd_selectflist(playerid, params);
- CMD:selectflist(playerid, params[])
- {
- if(!Logged{playerid} || PlayerBuyFurniture[playerid][0] != INVALID_OBJECT_ID) return true;
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid,"Você deve estar em sua própria casa para usar esse recurso.");
- new Float:dist;
- if(sscanf(params, "f", dist)) return SysMsg(playerid, "Usgae: /selectflist [radius]");
- if(dist <= 0.0) return SysMsg(playerid, "A distância deve ser maior do que 0.");
- new count = 0, mfurniture[MAX_HFURNITURE], desc[MAX_HFURNITURE][32], h = IsInHouseID[playerid], Float:x, Float:y, Float:z;
- for(new f = 0; f < MAX_HFURNITURE; f++)
- {
- if(HouseData[h][FurnModel][f] > 0 && HouseData[h][FurnPlaced][f] == 1)
- {
- GetDynamicObjectPos(HouseData[h][FurnObject][f], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, dist, x, y, z))
- {
- mfurniture[count] = HouseData[h][FurnModel][f];
- format(desc[count], 32, "%s", GetHouseFurnitureName(HouseData[h][FurnModel][f]));
- count++;
- }
- }
- }
- if(count > 0)
- {
- ShowModelSelectionMenu(playerid, "Selecione Móveis", MODEL_SELECTION_SFURNITURE, mfurniture, count, 0.0, 0.0, 90.0);
- SFRadius[playerid] = dist;
- }
- else SysMsg(playerid, "Você não está perto o suficiente para qualquer item.");
- return true;
- }
- CMD:placef(playerid, params[]) return cmd_placefurniture(playerid, params);
- CMD:placefurniture(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid,"Você deve estar em sua própria casa para colocar móveis.");
- new count = 0, mfurniture[MAX_HFURNITURE], desc[MAX_HFURNITURE][64];
- for(new i = 0; i < MAX_HFURNITURE; i++)
- {
- if(HouseData[IsInHouseID[playerid]][FurnModel][i] > 0 && HouseData[IsInHouseID[playerid]][FurnPlaced][i] == 0)
- {
- mfurniture[count] = HouseData[IsInHouseID[playerid]][FurnModel][i];
- format(desc[count], 64, "%s", GetHouseFurnitureName(HouseData[IsInHouseID[playerid]][FurnModel][i]));
- count++;
- }
- }
- if(count > 0) ShowModelSelectionMenu(playerid, "Colocar mobilia", MODEL_SELECTION_FURNITURE, mfurniture, count, 0.0, 0.0, 90.0);
- //ShowMessage(playerid,"inventário da casa","Você Não tem nenhum item no invenrário da casa.", "OK");
- return true;
- }
- CMD:removef(playerid, params[]) return cmd_removefurniture(playerid, params);
- CMD:removefurniture(playerid, params[])//apagar do inventário
- {
- if(!Logged{playerid}) return true;
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid,"Você deve estar em sua própria casa para móveis remotos.");
- new count = 0, mfurniture[MAX_HFURNITURE], desc[MAX_HFURNITURE][64];
- for(new i = 0; i < MAX_HFURNITURE; i++)
- {
- if(HouseData[IsInHouseID[playerid]][FurnModel][i] > 0 && HouseData[IsInHouseID[playerid]][FurnPlaced][i] == 0)
- {
- mfurniture[count] = HouseData[IsInHouseID[playerid]][FurnModel][i];
- format(desc[count], 64, "%s", GetHouseFurnitureName(HouseData[IsInHouseID[playerid]][FurnModel][i]));
- count++;
- }
- }
- if(count > 0) ShowModelSelectionMenu(playerid, "Remove Furniture", MODEL_REMOVE_FURNITURE, mfurniture, count, 0.0, 0.0, 90.0);
- //ShowMessage(playerid,"House Item Inventory","You do not have any unplaced items to throw out.", "OK");
- return true;
- }
- CMD:removeallf(playerid, params[]) return cmd_removeallfurniture(playerid, params);
- CMD:removeallfurniture(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid,"Você deve estar em sua própria casa para remover móveis.");
- new count = 0;
- for(new i = 0; i < MAX_HFURNITURE; i++)
- {
- if(HouseData[IsInHouseID[playerid]][FurnModel][i] > 0 && HouseData[IsInHouseID[playerid]][FurnPlaced][i] == 0)
- {
- count = 1;
- break;
- }
- }
- if(count == 1) Dialog_Show(playerid, FurnitureRemoveAll, DIALOG_STYLE_MSGBOX, "Mobília", "Tem certeza de que deseja descartar todos os seus móveis não colocados?\nO mobiliário que já está colocado dentro de sua casa não é afetado.", "Sim", "Deixa pra lá");
- else ShowMessage(playerid,"Inventário do item da casa", "Você não tem itens não colocados para jogar fora.", "OK");
- return true;
- }
- CMD:pickupallf(playerid, params[]) return cmd_pickupallfurniture(playerid, params);
- CMD:pickupallfurniture(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid,"Você deve estar em sua própria casa para pegar móveis.");
- new count = 0;
- for(new i = 0; i < MAX_HFURNITURE; i++)
- {
- if(HouseData[IsInHouseID[playerid]][FurnModel][i] > 0 && HouseData[IsInHouseID[playerid]][FurnPlaced][i] == 1)
- {
- count = 1;
- break;
- }
- }
- if(count == 1) Dialog_Show(playerid, FurniturePickupAll, DIALOG_STYLE_MSGBOX, "Mobília", "Você tem certeza de que deseja guardar todos os móveis do seu lugar?\nVocê pode então colocá-los novamente usando /placefurniture.", "Sim", "Deixa pra lá");
- else ShowMessage(playerid,"Inventário do item da casa", "Você não tem itens colocados para guardar.", "OK");
- return true;
- }
- CMD:frickedf(playerid)
- {
- if(!IsPlayerAdmin(playerid)) return SysMsg(playerid, AUTHMSG);
- new Float:x, Float:y, Float:z, count = 0;
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- for(new f = 0; f < MAX_HFURNITURE; f++)
- {
- if(HouseData[h][FurnPlaced][f] == 1)
- {
- GetDynamicObjectPos(HouseData[h][FurnObject][f], x, y, z);
- if(IsPointInRangeOfPoint(x, y, z, 0.0, 0.0, 0.0, 10.0))
- {
- count ++;
- }
- }
- }
- }
- printf("%i", count);
- return true;
- }
- CMD:reloadoutdoorfurniture(playerid)
- {
- if(!Logged{playerid}) return true;
- new h = GetHouseForExteriorEdit(playerid);
- if(h == -1) return SysMsg(playerid, "Não foi possível encontrar um exterior de casa para você editar.");
- for(new f = 0; f < MAX_EHFURNITURE; f++)
- {
- if(EFurnData[h][EFurnPlaced][f])
- {
- if(EFurnData[h][EFurnObject][f] != INVALID_OBJECT_ID) DestroyDynamicObjectEx(EFurnData[h][EFurnObject][f], "EFurnData[h][EFurnObject][f]");
- EFurnData[h][EFurnObject][f] = INVALID_OBJECT_ID;
- EFurnData[h][EFurnPlaced][f] = false;
- EFurnData[h][EFurnSQLID][f] = 0;
- EFurnData[h][EFurnModel][f] = 0;
- }
- }
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM efurniture WHERE HouseSQLID = %i", HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery, "LoadExteriorHouseFurniture");
- return true;
- }
- CMD:reloadmyfurniture(playerid, params[])
- {
- if(!CanFurnishHouse(playerid, IsInHouseID[playerid])) return SysMsg(playerid,"Você deve estar em sua própria casa.");
- new b = IsInHouseID[playerid];
- foreach(new i: Player)
- {
- if(PlayerPlaceFurniture[i] != INVALID_OBJECT_ID || PlayerEditFurniture[i] != INVALID_OBJECT_ID || PlayerBuyFurniture[i][0] != INVALID_OBJECT_ID)
- {
- if(IsInHouseID[i] == IsInHouseID[playerid] && i != playerid)
- {
- return SysMsg(playerid, "Alguém em sua casa está editando ou comprando móveis de casa, como tal, você não pode recarregar o mobiliário até finalizar.");
- }
- }
- }
- if(HouseData[b][InsideID] == 31) //warehouse int
- {
- //freeze the player for 3 seconds
- TogglePlayerControllable(playerid, false);
- TeleportTimer[playerid] = 3;
- BeingTeleported{playerid} = true;
- }
- for(new f = 0; f < MAX_HFURNITURE; f++)
- {
- if(HouseData[b][FurnObject][f] != INVALID_OBJECT_ID)
- {
- DestroyDynamicObjectEx(HouseData[b][FurnObject][f], "HouseData[b][FurnObject][f] 1");
- }
- HouseData[b][FurnSQLID][f] = 0;
- HouseData[b][FurnModel][f] = 0;
- HouseData[b][FurnPlaced][f] = 0;
- HouseData[b][FurnObject][f] = INVALID_OBJECT_ID;
- HouseData[b][DoorOpen][f] = false;
- HouseData[b][DoorLocked][f] = false;
- for(new i = 0; i < MAX_TEXTURESLOTS; i++)
- {
- FurnitureIndex[b][f][i] = -1;
- }
- }
- for(new w = 0; w < MAX_WEED_PLANTS; w++)
- {
- WeedData[b][PlantGrowth][w] = 0;
- WeedData[b][PlantWater][w] = 0;
- WeedData[b][PlantPotObj][w] = INVALID_OBJECT_ID;
- WeedData[b][PlantSQLID][w] = 0;
- WeedData[b][PlantFurnIndex][w] = 0;
- }
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM hfurniture WHERE HouseSQLID = %i LIMIT %i", HouseData[b][HouseSQLID], MAX_HFURNITURE);
- mysql_tquery(conn, mquery, "LoadHouseFurniture");
- SendClientMessage(playerid, COLOR_WHITE, "Você {44C300}recarregou{FFFFFF} seus furniture.");
- Streamer_Update(playerid);
- return true;
- }
- CMD:reloadfurniture(playerid, params[])
- {
- if(!IsPlayerAdmin(playerid)) return SysMsg(playerid, AUTHMSG);
- for(new x = 0; x < MAX_FURNITURE; x++)
- {
- FurniData[x][fuName][0] = 0;
- FurniData[x][fModel] = 0;
- FurniData[x][fPrice] = 0;
- FurniData[x][fSubCategory] = 0;
- }
- mysql_pquery(conn, "SELECT * FROM furniture ORDER BY Name ASC", "LoadFurniture", "");
- SendClientMessage(playerid, COLOR_WHITE, "Você {44C300}recarregou{FFFFFF} todos os objetos.");
- return true;
- }
- CMD:updatef(playerid, params[])
- {
- if(!IsPlayerAdmin(playerid)) return SysMsg(playerid, AUTHMSG);
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE hfurniture SET insideid = %i WHERE HouseSQLID = %i", HouseData[h][InsideID], HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery);
- }
- SendClientMessage(playerid, COLOR_RED, "Inside ID's atualizado.");
- return true;
- }
- CMD:emptyfurniture(playerid, params[])
- {
- if(!IsPlayerAdmin(playerid)) return true;
- mysql_pquery(conn, "SELECT HouseSQLID FROM hfurniture GROUP BY HouseSQLID", "ProcessFurnitureEmpty");
- return true;
- }
- CMD:furniturelimit(playerid, params[])
- {
- SendClientMessageF(playerid, COLOR_GREY, "Seu limite de móveis é %i. Você pode encontrar mais sobre os limites da mobília vendo a página da doação no Web site.", GetMaxFurnitureForPlayer(playerid));
- return true;
- }
- CMD:furniturecount(playerid, params[])
- {
- if(IsInHouseID[playerid] == -1) return SysMsg(playerid,"Você deve estar em uma casa para usar este recurso.");
- new h = IsInHouseID[playerid];
- if(!CanFurnishHouse(playerid, h)) return SysMsg(playerid, "Você deve estar em uma casa que você pode fornecer para usar este comando.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM hfurniture WHERE HouseSQLID = %i", HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery, "ShowFurnitureCount", "d", playerid);
- return true;
- }
- //end of house and furniture cmds
- //==================== Fim ==================================//
- //8 business commands
- //business commands
- CMD:makebizz(playerid, params[])
- {
- if(!IsPlayerAdminLevelOK(playerid, 5)) return SysMsg(playerid, AUTHMSG);//if(!IsPlayerAdmin(playerid)) return SysMsg(playerid, AUTHMSG);
- new Float:X,Float:Y,Float:Z, NewBizzCost, NewPayout, Description[50], bType;
- if(sscanf(params, "iiis[50]", NewBizzCost, bType, NewPayout, Description)) return SysMsg(playerid,"Use: /makebizz [custo] [tipo] [payday] [desc]");
- if(NewBizzCost < 1) return SysMsg(playerid,"O custo deve ser > 0");
- if(NewPayout < 1) return SysMsg(playerid,"Pagamento inválido.");
- if(bType < 0 || bType > 22) return SysMsg(playerid, "Tipo inválido");
- GetPlayerPos(playerid,X,Y,Z);
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO bizz (Description,oPosX,oPosY,oPosZ) VALUES ('%e',%f,%f,%f)", Description,X,Y,Z);
- mysql_pquery(conn, mquery, "InsertNewBusiness", "iiii", playerid, NewBizzCost, NewPayout, bType);
- return true;
- }
- CMD:editbizz(playerid, params[])
- {
- if(!IsPlayerAdmin(playerid)) return SysMsg(playerid, AUTHMSG);
- new bizzid = -1;
- for(new b = 0; b < MAX_BIZZ; b++)
- {
- if(IsPlayerInRangeOfPoint(playerid,4.5,BizzData[b][oPosX],BizzData[b][oPosY],BizzData[b][oPosZ]))
- {
- bizzid = b;
- break;
- }
- }
- if(bizzid == -1) return SysMsg(playerid,"Você não está perto de nenhuma empresa.");
- new element[10], value;
- if(sscanf(params, "s[10]IS", element)) return SysMsg(playerid,"Use: /editbizz [opções] [valor] Elemento: Valor, Dono, Payday, Tipo, Nome");
- if(strcmp("valor", element, true) == 0)
- {
- if(sscanf(params, "s[10]i", element, value)) return SysMsg(playerid,"Use: /editbizz valor [valor]");
- if(value < 1) return SysMsg(playerid,"O custo deve ser > 0");
- MySQLUpdateInt(BizzData[bizzid][BizzSQLID], "Price", value, "bizz");
- BizzData[bizzid][BizzPrice] = value;
- SysMsgF(playerid, "Bizz Price Is Now $%i.", BizzData[bizzid][BizzPrice]);
- format(gstr, sizeof(gstr), "Negocio editado #%i preço para $%i", BizzData[bizzid][BizzSQLID], value);
- AdminLog(playerid, 0, "", gstr);
- return true;
- }
- else if(strcmp("payday", element, true) == 0)
- {
- if(sscanf(params, "s[10]i", element, value)) return SysMsg(playerid,"Use: /editbizz payday [valor]");
- if(value < 1) return SysMsg(playerid,"Novo pagamento deve ser maior do que 0.");
- MySQLUpdateInt(BizzData[bizzid][BizzSQLID], "Payout", value, "bizz");
- BizzData[bizzid][Payout] = value;
- SysMsgF(playerid, "O pagamendo do negocio agora é $%i.", BizzData[bizzid][Payout]);
- format(gstr, sizeof(gstr), "Negocio editado #%i payday agora é $%i", BizzData[bizzid][BizzSQLID], value);
- AdminLog(playerid, 0, "", gstr);
- return true;
- }
- else if(strcmp("tipo", element, true) == 0)
- {
- if(sscanf(params, "s[10]i", element, value)) return SysMsg(playerid,"Use: /editbizz tipo [tipo de negocio]");
- if(value < 0) return SysMsg(playerid,"O ID deve ser superior a >= 0.");
- new Float:pPos[3];
- GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
- BizzData[bizzid][oPosX] = pPos[0];
- BizzData[bizzid][oPosY] = pPos[1];
- BizzData[bizzid][oPosZ] = pPos[2];
- BizzData[bizzid][BizzType] = value;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE bizz SET oPosX=%f, oPosY=%f, oPosZ=%f, BizzType = %i WHERE id=%i", pPos[0], pPos[1], pPos[2], BizzData[bizzid][BizzType], BizzData[bizzid][BizzSQLID]);
- mysql_pquery(conn, mquery);
- DestroyDynamicPickup(BizzData[bizzid][BizzPickup]);
- BizzData[bizzid][BizzPickup] = CreateDynamicPickup(1272,23,BizzData[bizzid][oPosX],BizzData[bizzid][oPosY],BizzData[bizzid][oPosZ], -1, -1, -1, 10);
- UpdateBizzLabel(bizzid);
- SysMsgF(playerid, "O negocio agora é %i e XYZ foi atualizada.", BizzData[bizzid][BizzType]);
- return true;
- }
- else if(strcmp("dono", element, true) == 0)
- {
- new newowner[20];
- if(sscanf(params, "s[10]s[20]", element, newowner)) return SysMsg(playerid,"Use: /editbizz dono [valor]");
- if(strcmp("ninguem", newowner, true) == 0)
- {
- new i = 0;
- foreach(new p: Player)
- {
- for(i = 0; i < MAX_BIZZ_PER_PLAYER; i++)
- {
- if(PlayerBizzID[p][i] == bizzid)
- {
- PlayerBizzID[p][i] = -1;
- break;
- }
- }
- }
- MySQLUpdateInt(BizzData[bizzid][BizzSQLID], "OwnerSQLID", 0, "bizz");
- BizzData[bizzid][BizzOwnerSQLID] = 0;
- format(gstr, sizeof(gstr), "Negocio editado #%i Dono: ninguem", bizzid);
- AdminLog(playerid, 0, "", gstr);
- return true;
- }
- new accid = MySQLCheckAccount(newowner, playerid);
- if(accid == 0) return SysMsg(playerid, "Nenhum nome da conta encontrado.");
- new posID = GetPlayerID(playerid, newowner);
- new bizzCount = 0;
- if(posID >= 0)
- {
- foreach(new i: Player)
- {
- for(new b = 0; b < MAX_BIZZ_PER_PLAYER; b++)
- {
- if(PlayerBizzID[i][b] == bizzid)
- {
- PlayerBizzID[i][b] = -1;
- }
- }
- }
- for(new i = 0; i < MAX_BIZZ_PER_PLAYER; i++)
- {
- if(PlayerBizzID[posID][i] != -1)
- {
- bizzCount ++;
- }
- }
- if(bizzCount +1 > MAX_BIZZ_PER_PLAYER) return SysMsg(playerid,"Esse novo proprietário não pode ter mais negócios.");
- for(new i = 0; i < MAX_BIZZ_PER_PLAYER; i++)
- {
- if(PlayerBizzID[posID][i] == -1)
- {
- PlayerBizzID[posID][i] = bizzid;
- break;
- }
- }
- }
- MySQLUpdateInt(BizzData[bizzid][BizzSQLID], "OwnerSQLID", accid, "bizz");
- BizzData[bizzid][BizzOwnerSQLID] = accid;
- UpdateBizzLabel(bizzid);
- SysMsgF(playerid, "O negocio agora é %s.", GetSQLName(BizzData[bizzid][BizzOwnerSQLID]));
- format(gstr, sizeof(gstr), "Negocio editado #%i para o dono %s", BizzData[bizzid][BizzSQLID], GetSQLName(BizzData[bizzid][BizzOwnerSQLID]));
- AdminLog(playerid, 0, "", gstr);
- return true;
- }
- else if(strcmp("nome", element, true) == 0)
- {
- new newname[60];
- if(sscanf(params, "s[10]s[60]", element, newname)) return SysMsg(playerid,"Use: /editbizz nome [valor]");
- MySQLUpdateString(BizzData[bizzid][BizzSQLID], "Description", newname, "bizz");
- format(BizzData[bizzid][BizzDescription], 60, newname);
- UpdateBizzLabel(bizzid);
- SysMsgF(playerid, "Nome do negocio agora é %s.", BizzData[bizzid][BizzDescription]);
- format(gstr, sizeof(gstr), "Negocio editado #%i nome para %s",BizzData[bizzid][BizzSQLID], BizzData[bizzid][BizzDescription]);
- AdminLog(playerid, 0, "", gstr);
- return true;
- }
- else SysMsg(playerid,"*Use: /editbizz [opções] [valor] Elemento: Valor, Dono, Payday, Tipo, Nome");
- return true;
- }
- CMD:badvert(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(AdvertSpamTime[playerid] > 0) return SysMsg(playerid, "or favor, aguarde entre postar anúncios.");
- if(!AdvertsToggle{playerid}) return SysMsg(playerid, "Você não pode fazer um anúncio como você tem anúncios desativado.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você precisa de um telefone celular para enviar um anúncio.");
- new b = IsInBizzID[playerid];
- if(b <= 0)
- {
- for(new x = 0; x < MAX_BIZZ; x++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, BizzData[x][oPosX], BizzData[x][oPosY], BizzData[x][oPosZ]))
- {
- b = x;
- break;
- }
- }
- }
- if(b <= 0) return SysMsg(playerid, "Você deve estar em um negócio para usar este comando.");
- if(BizzData[b][BizzOwnerSQLID] == SQLID[playerid] || IsBizzMod(playerid, b))
- {
- if(isnull(params))
- {
- SysMsg(playerid,"Use: /badvert [mensagem]");
- SysMsg(playerid,"Examplo: '/badvert Isso é um teste' vai mostrar como: [Anúncio de negócio] Isso é um teste [Nome do negócio]");
- return true;
- }
- if(strlen(params) < 30) return SysMsg(playerid, "Seu anúncio é muito curto. Seja criativo e seja apenas IC.");
- new AdCost = strlen(params) * 8;
- if(IsDonator[playerid] < 3)
- {
- GivePlayerCash(playerid, -AdCost);
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio comercial %i caracteres longos, custando-lhe $%i ($8/letra).",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else if(IsDonator[playerid] == 3)
- {
- AdCost = AdCost / 2;
- GivePlayerCash(playerid, -AdCost);
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio comercial %i caracteres longos, custando-lhe $%i. ($8/letra)",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else if(IsDonator[playerid] == 4)
- {
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio comercial %i caracteres longos, custando-lhe $%i. ($8/letra)",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- FACTIONS[FACTION_NEWS][FactionBankBalance] += floatround(1 * AdCost);
- MySQLUpdateInt(FACTION_NEWS, "BankBalance", FACTIONS[FACTION_NEWS][FactionBankBalance], "factions");
- format(gstr, sizeof(gstr),"[Anúncio comercial] %s [%s]", params, BizzData[b][BizzDescription]);
- foreach(new i: Player) if(Logged{i} && AdvertsToggle{i}) SendSplitMessage(i, COLOR_GREEN, gstr);
- format(gstr, sizeof(gstr), "[Admin] ^^ Bizz Anúncio de %s (ID %i)", NameEx(playerid), playerid);
- AdminBroadcast(gstr, 0);
- AddToLog("advert", gstr);
- return true;
- }
- else SysMsg(playerid, "Você deve possuir ou ser um gerente desse negócio para usar esse comando.");
- return true;
- }
- CMD:enterfee(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- for(new h = 0; h < MAX_BIZZ; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.5, BizzData[h][oPosX], BizzData[h][oPosY], BizzData[h][oPosZ]))
- {
- if(BizzData[h][BizzOwnerSQLID] == SQLID[playerid])
- {
- if(BizzData[h][BizzType] == BIZZ_TYPE_STATIC && BizzData[h][IsSpecial] == 0) return SysMsg(playerid,"Você não pode ter uma taxa de entrada para este bizz.");
- if(isnull(params)) return SysMsg(playerid,"Use: /enterfee [Quantidade]");
- if(!IsNumeric(params)) return SysMsg(playerid,"Quantidade inválida.");
- if(strval(params) < 0) return SysMsg(playerid,"Quantidade inválida, Deve ser um mínimo de $0.");
- if(strval(params) > 25) return SysMsg(playerid,"Quantidade inválida, Só pode ser um máximo de $25.");
- BizzData[h][EnterFee] = strval(params);
- MySQLUpdateInt(BizzData[h][BizzSQLID], "EnterFee", BizzData[h][EnterFee], "bizz");
- SendClientMessageF(playerid, COLOR_LIGHTRED, "A nova taxa de entrada para %s é agora $%i.",BizzData[h][BizzDescription], BizzData[h][EnterFee]);
- UpdateBizzLabel(h);
- break;
- }
- }
- }
- return true;
- }
- CMD:bizzmusic(playerid, params[])
- {
- if(IsInBizzID[playerid] == -1) return SysMsg(playerid, "Você deve estar em um negócio.");
- if(BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] != SQLID[playerid] && !IsBizzMod(playerid, IsInBizzID[playerid])) return SysMsg(playerid,"Você deve possuir o negócio.");
- new musicLink[200], bizz = IsInBizzID[playerid];
- if(sscanf(params, "s[200]", musicLink)) return SysMsg(playerid, "Use: /bizzmusic [link/parar]");
- if(strcmp(musicLink, "parar") == 0)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && IsInBizzID[i] == IsInBizzID[playerid])
- {
- StopAudioStreamForPlayer(i);
- }
- }
- BizzData[bizz][BMusicPlaying] = 0;
- }
- else
- {
- foreach(new i: Player)
- {
- if(Logged{i} && IsInBizzID[i] == IsInBizzID[playerid])
- {
- StopAudioStreamForPlayer(i);
- PlayAudioStreamForPlayerEx(i, musicLink);
- }
- format(BizzData[bizz][BMusic], 200, musicLink);
- BizzData[bizz][BMusicPlaying] = 1;
- }
- }
- return true;
- }
- CMD:mybizz(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new Bcount = 0, substr[128], bid;
- gstr[0] = EOS;
- for(new v = 0; v < MAX_BIZZ_PER_PLAYER; v++)
- {
- if(PlayerBizzID[playerid][v] != -1)
- {
- if(Bcount != 0) strcat(gstr, "\n");
- bid = PlayerBizzID[playerid][v];
- if(BizzData[bid][BizzType] > 0 || BizzData[bid][IsSpecial] == 1)
- {
- new locked[9];
- if(BizzData[bid][BizzLocked]) format(locked, sizeof(locked), "Fechado");
- else format(locked, sizeof(locked), "Aberto");
- if(IsBizzStockable(bid) > 0) format(substr, sizeof(substr), "%s - $%s Pagamento - Porta %s - $%s Ganhos para coletar - %i%% Estoque", BizzData[bid][BizzDescription], format_cash(BizzData[bid][Payout]), locked, format_cash(BizzData[bid][BizzEarnings]), BizzData[bid][BizzStock]);
- else format(substr, sizeof(substr), "%s - $%s Pagamento - Door %s - $%s Ganhos para coletar", BizzData[bid][BizzDescription], format_cash(BizzData[bid][Payout]), locked, format_cash(BizzData[bid][BizzEarnings]));
- strcat(gstr, substr);
- }
- else
- {
- format(substr, sizeof(substr), "%s - $%s Pagamento (Negócio padrão)", BizzData[bid][BizzDescription], format_cash(BizzData[bid][Payout]));
- strcat(gstr, substr);
- }
- Bcount ++;
- }
- }
- if(Bcount > 0)
- {
- strcat(gstr, "\n");
- new Sbizzid = -1;
- Sbizzid = GetBizzID("Red County Sweeping Co.");
- if(Sbizzid != -1 && BizzData[Sbizzid][BizzOwnerSQLID] == SQLID[playerid])
- {
- format(substr, sizeof(substr), "Red County Sweeping Co - $200 por trabalho - $%s.", format_cash(BizzData[Sbizzid][BizzEarnings]));
- strcat(gstr, substr);
- }
- Sbizzid = GetBizzID("Red County Trucking LTD");
- if(Sbizzid != -1 && BizzData[Sbizzid][BizzOwnerSQLID] == SQLID[playerid])
- {
- format(substr, sizeof(substr), "Red County Trucking LTD - $200 por trabalho - $%s.", format_cash(BizzData[Sbizzid][BizzEarnings]));
- strcat(gstr, substr);
- }
- Sbizzid = GetBizzID("Montgomery Pizza Stack");
- if(Sbizzid != -1 && BizzData[Sbizzid][BizzOwnerSQLID] == SQLID[playerid])
- {
- format(substr, sizeof(substr), "Montgomery Pizza Stack - $200 por trabalho - $%s.", format_cash(BizzData[Sbizzid][BizzEarnings]));
- strcat(gstr, substr);
- }
- Sbizzid = GetBizzID("Red County Transport LTD");
- if(Sbizzid != -1 && BizzData[Sbizzid][BizzOwnerSQLID] == SQLID[playerid])
- {
- format(substr, sizeof(substr), "Red County Transport LTD - $10 por ponto de ônibus - $%s.", format_cash(BizzData[Sbizzid][BizzEarnings]));
- strcat(gstr, substr);
- }
- Sbizzid = GetBizzID("Bone County Gestão de resíduos");
- if(Sbizzid != -1 && BizzData[Sbizzid][BizzOwnerSQLID] == SQLID[playerid])
- {
- format(substr, sizeof(substr), "Bone County Gestão de resíduos - $%s.", format_cash(BizzData[Sbizzid][BizzEarnings]));
- strcat(gstr, substr);
- }
- Sbizzid = GetBizzID("Bone County Coal Mine");
- if(Sbizzid != -1 && BizzData[Sbizzid][BizzOwnerSQLID] == SQLID[playerid])
- {
- format(substr, sizeof(substr), "Bone County Coal Mine - $%s.", format_cash(BizzData[Sbizzid][BizzEarnings]));
- strcat(gstr, substr);
- }
- ShowMessage(playerid, "Meus negócios", gstr, "OK");
- }
- else SysMsg(playerid,"Você não tem negócios.");
- return true;
- }
- CMD:collectearning(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new text[128], Bcount = 0, bizz, TotalEarn = 0, becount = 0;
- for(new b = 0; b < MAX_BIZZ_PER_PLAYER; b++)
- {
- if(PlayerBizzID[playerid][b] != -1)
- {
- bizz = PlayerBizzID[playerid][b];
- if(GetPlayerVirtualWorld(playerid) == BizzData[bizz][BizzVW] || IsPlayerInRangeOfPoint(playerid, 3.0, BizzData[bizz][oPosX], BizzData[bizz][oPosY], BizzData[bizz][oPosZ]))
- {
- becount++;
- if(BizzData[bizz][BizzEarnings] > 0)
- {
- Bcount ++;
- TotalEarn += BizzData[bizz][BizzEarnings];
- format(text, 128, "%s - Você recebeu $%s deste negócio.", BizzData[bizz][BizzDescription], format_cash(BizzData[bizz][BizzEarnings]));
- SendClientMessage(playerid, COLOR_ORANGE, text);
- GivePlayerCash(playerid, BizzData[bizz][BizzEarnings]);
- BizzData[bizz][BizzEarnings] = 0;
- MySQLUpdateInt(BizzData[bizz][BizzSQLID], "BizzEarnings", 0, "bizz");
- }
- }
- }
- }
- if(TotalEarn >= 5000) UnlockAchievement(playerid,24);
- if(becount == 0) return SysMsg(playerid,"Você precisa estar dentro ou no exterior de um negócio para usar este comando.");
- else if(Bcount == 0) return SysMsg(playerid,"Nenhum de seus negócios tem ganhos para retirar.");
- return true;
- }
- CMD:collectearnings(playerid, params[]) return cmd_collectearning(playerid, params);
- CMD:requeststock(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInBizzID[playerid] == -1) return SysMsg(playerid,"Você deve estar dentro de sua empresa para solicitar mais estoque.");
- new bizz = IsInBizzID[playerid];
- if(IsBizzMod(playerid, bizz) || BizzData[bizz][BizzOwnerSQLID] == SQLID[playerid])
- {
- if(BizzData[bizz][BizzLocked]) return SysMsg(playerid,"Esse negócio já está fechado.");
- if(IsBizzStockable(bizz) == 0) return SysMsg(playerid,"Este negócio não requer estoque.");
- if(BizzData[bizz][BizzStock] > 50) return SysMsg(playerid,"Você só pode solicitar mais ações se o nível de estoque for inferior a cinquenta por cento.");
- if(BizzData[bizz][BizzETDelivering] == 1) return SysMsg(playerid,"Uma entrega já está em andamento.");
- new fee = IsBizzStockable(bizz);
- if(fee > BankBalance[playerid]) return SysMsgF(playerid, "Sua conta bancária precisa de pelo menos $%s para solicitar um reabastecimento.", format_cash(fee));
- BankBalance[playerid] -= fee;
- BizzData[bizz][BizzRequestStock] = 1;
- BizzData[bizz][BizzETDelivering] = 0;
- MySQLUpdateInt(SQLID[playerid], "Bank", BankBalance[playerid], "players");
- MySQLUpdateInt(BizzData[bizz][BizzSQLID], "RequestStock", BizzData[bizz][BizzRequestStock], "bizz");
- SendClientMessageF(playerid, COLOR_WHITE, "Você solicitou com sucesso um reabastecimento para %s a um custo de $%s do seu banco.", BizzData[bizz][BizzDescription], format_cash(fee));
- return true;
- }
- return true;
- }
- CMD:manageactors(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInBizzID[playerid] == -1) return SysMsg(playerid, "Você deve estar em uma empresa para usar esse comando.");
- new b = IsInBizzID[playerid];
- if(BizzData[b][BizzOwnerSQLID] != SQLID[playerid] && !IsBizzMod(playerid, b)) return SysMsg(playerid, "Você não possui esse negócio.");
- if(IsDonator[playerid] == 0 || IsDonator[playerid] == 1) format(tgstr, sizeof(tgstr), "Actor 1");
- if(IsDonator[playerid] == 2) format(tgstr, sizeof(tgstr), "Actor 1\nActor 2");
- if(IsDonator[playerid] == 3) format(tgstr, sizeof(tgstr), "Actor 1\nActor 2\nActor 3");
- if(IsDonator[playerid] == 4) format(tgstr, sizeof(tgstr), "Actor 1\nActor 2\nActor 3\nActor 4");
- Dialog_Show(playerid, ActorMenu, DIALOG_STYLE_LIST, "Actors", tgstr, "Okay", "Cancelar");
- return true;
- }
- CMD:addmanager(playerid, params[])
- {
- new bcount = 0, bizzid, playa = -1;
- for(new v = 0; v < MAX_BIZZ_PER_PLAYER; v++)
- {
- if(PlayerBizzID[playerid][v] != -1)
- {
- if(sscanf(params, "iu", bizzid, playa)) SendClientMessageF(playerid, COLOR_WHITE, "ID %i - %s", v, BizzData[PlayerBizzID[playerid][v]][BizzDescription]);
- bcount ++;
- }
- }
- if(bcount == 0) return SysMsg(playerid, "Você não possui negócios.");
- if(sscanf(params, "iu", bizzid, playa)) return SysMsg(playerid, "Use: /addmanager [o negócio ID (Veja acima)] [ID ou nome do jogador]");
- if(bizzid > 1) return SysMsg(playerid, "O ID da empresa não pode ser superior a 1.");
- if(bizzid < 0) return SysMsg(playerid, "ID comercial não pode ser inferior a 0.");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode se tornar um moderador de negócios.");
- if(!Logged{playa}) return SysMsg(playerid,"Esse jogador não está logado/registrado.");
- if(IsBizzMod(playa, PlayerBizzID[playerid][bizzid])) return SysMsg(playerid, "Este jogador já é um gerente para sua empresa. Se você quiser removê-los, então use /removemanager.");
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO bizzmods (BizzID, ModSQLID) VALUES (%i, %i)", BizzData[PlayerBizzID[playerid][bizzid]][BizzSQLID], SQLID[playa]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_BLUE, "%s foi adicionado como gerente para o seu negócio: %s", NameEx(playa), BizzData[PlayerBizzID[playerid][bizzid]][BizzDescription]);
- SendClientMessageF(playa, COLOR_BLUE, "%s tornou-se um gerente de seus negócios: %s", NameEx(playerid), BizzData[PlayerBizzID[playerid][bizzid]][BizzDescription]);
- return true;
- }
- CMD:removemanager(playerid, params[])
- {
- new bcount = 0, bizzid, fullname[MAX_PLAYER_NAME];
- for(new v = 0; v < MAX_BIZZ_PER_PLAYER; v++)
- {
- if(PlayerBizzID[playerid][v] != -1)
- {
- if(sscanf(params, "is[24]", bizzid, fullname)) SendClientMessageF(playerid, COLOR_WHITE, "ID %i - %s", v, BizzData[PlayerBizzID[playerid][v]][BizzDescription]);
- bcount ++;
- }
- }
- if(bcount == 0) return SysMsg(playerid, "Você não possui negócios.");
- if(sscanf(params, "is[24]", bizzid, fullname)) return SysMsg(playerid,"Use: /removemanager [negocio ID (Veja acima)] [Nome_Sobrenome] *Por favor, note que isso varre o banco de dados, não jogadores no jogo*");
- if(bizzid > 1) return SysMsg(playerid, "ID do negócio não pode ser maior do que 1.");
- new sqlid = MySQLCheckAccount(fullname, playerid);
- if(sqlid == 0) return SysMsg(playerid, "O nome não foi encontrado. Por favor inclua o primeiro nome, sobrenome e um sublinhado.");
- new b = PlayerBizzID[playerid][bizzid];
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM bizzmods WHERE BizzID = %i AND ModSQLID = %i", BizzData[b][BizzSQLID], sqlid);
- mysql_pquery(conn, mquery, "ProcessManagerRemoval", "ddds", playerid, sqlid, b, fullname);
- return true;
- }
- CMD:viewmanagers(playerid, params[])
- {
- new bcount = 0, bizzid;
- for(new v = 0; v < MAX_BIZZ_PER_PLAYER; v++)
- {
- if(PlayerBizzID[playerid][v] != -1)
- {
- if(sscanf(params, "i", bizzid)) SendClientMessageF(playerid, COLOR_WHITE, "ID %i - %s", v, BizzData[PlayerBizzID[playerid][v]][BizzDescription]);
- bcount ++;
- }
- }
- if(bcount == 0) return SysMsg(playerid, "Você não possui negócios.");
- if(sscanf(params, "i", bizzid)) return SysMsg(playerid,"Use: /viewmanagers [ID do negocio (veja acima)]");
- if(bizzid > 1) return SysMsg(playerid, "ID do negócio não pode ser maior do que 1.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM bizzmods WHERE BizzID = %i", BizzData[PlayerBizzID[playerid][bizzid]][BizzSQLID]);
- mysql_pquery(conn, mquery, "ShowManagerList", "d", playerid);
- return true;
- }
- CMD:reloadbizz(playerid, params[])
- {
- if(!IsPlayerAdmin(playerid)) return SysMsg(playerid, AUTHMSG);
- for(new b = 0; b < MAX_BIZZ; b++)
- {
- DestroyDynamicPickup(BizzData[b][BizzPickup]);
- DeleteBizzLabel(b);
- BizzData[b][BizzDescription][0] = 0;
- BizzData[b][BizzSQLID] = 0;
- BizzData[b][oPosX] = 0;
- BizzData[b][oPosY] = 0;
- BizzData[b][oPosZ] = 0;
- BizzData[b][iPosX] = 0;
- BizzData[b][iPosY] = 0;
- BizzData[b][iPosZ] = 0;
- BizzData[b][Payout] = 0;
- BizzData[b][BizzPrice] = 0;
- BizzData[b][BizzType] = 0;
- BizzData[b][EnterFee] = 0;
- BizzData[b][BizzEarnings] = 0;
- BizzData[b][BizzLocked] = false;
- BizzData[b][BizzStock] = 0;
- BizzData[b][BizzRequestStock] = 0;
- BizzData[b][IsSpecial] = 0;
- BizzData[b][BizzOwnerSQLID] = 0;
- BizzData[b][InteriorID] = 0;
- BizzData[b][BizzVW] = 0;
- BizzData[b][ExitVW] = 0;
- BizzData[b][BizzPickup] = 0;
- BizzData[b][BizzLabel] = Text3D:INVALID_3DTEXT_ID;
- BizzData[b][BizzLights] = false;
- for(new x = 0; x < 4; x++)
- {
- if(BizzData[b][BizzActorSpawned][x] == 1) DestroyActor(BizzData[b][BizzActor][x]);
- BizzData[b][BizzActor][x] = -1;
- BizzData[b][BizzActorSpawned][x] = 0;
- BizzData[b][BizzActorSkin][x] = 0;
- BizzData[b][BizzActorX][x] = 0;
- BizzData[b][BizzActorY][x] = 0;
- BizzData[b][BizzActorZ][x] = 0;
- BizzData[b][BizzActorAngle][x] = 0;
- BizzData[b][BizzActorAnim][x] = -1;
- }
- }
- mysql_tquery(conn, "SELECT * FROM bizz", "LoadBizzes");
- SetTimer("ProcessBKeys", 1000, 0);
- SendClientMessage(playerid, COLOR_WHITE, "Todas as empresas foram {44C300}recarregadas.");
- AdminLog(playerid, 0, "", "Reloaded todas as empresas do banco de dados");
- return true;
- }
- CMD:buybizz(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new bizzCount = 0;
- for(new biz = 0; biz < MAX_BIZZ_PER_PLAYER; biz++)
- {
- if(PlayerBizzID[playerid][biz] != -1)
- {
- bizzCount ++;
- }
- }
- if(bizzCount +1 > MAX_BIZZ_PER_PLAYER) return SysMsg(playerid,"Você não pode ter mais negócios.");
- for(new h = 0; h < MAX_BIZZ; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid,2.5,BizzData[h][oPosX],BizzData[h][oPosY],BizzData[h][oPosZ]))
- {
- if(BizzData[h][BizzOwnerSQLID] == 0)
- {
- if(Cash[playerid] < BizzData[h][BizzPrice]) return SysMsg(playerid,"Você não tem dinheiro suficiente para comprar este negócio.");
- BizzData[h][BizzOwnerSQLID] = SQLID[playerid];
- MySQLUpdateInt(BizzData[h][BizzSQLID], "OwnerSQLID", SQLID[playerid], "bizz");
- GivePlayerCash(playerid, -BizzData[h][BizzPrice]);
- for(new i = 0; i < MAX_BIZZ_PER_PLAYER; i++)
- {
- if(PlayerBizzID[playerid][i] == -1)
- {
- PlayerBizzID[playerid][i] = h;
- break;
- }
- }
- UpdateBizzLabel(h);
- SendClientMessageF(playerid,COLOR_GOLD,"Você comprou %s por $%s.",BizzData[h][BizzDescription],format_cash(BizzData[h][BizzPrice]));
- SendClientMessageF(playerid,COLOR_GOLD,"Agora vai receber um extra de $%s Todos os payday.",format_cash(BizzData[h][Payout]));
- ShowInfoText(playerid,"~g~business ACQUIRED",5000);
- UnlockAchievement(playerid, 59);
- break;
- }
- else if(BizzData[h][BizzOwnerSQLID] == -5) return SysMsg(playerid,"Este negócio está atualmente nas mãos da Silver Trading, confira lá para ver se está à venda.");
- else return SysMsg(playerid,"Este negócio não está à venda.");
- }
- }
- return true;
- }
- CMD:sellbizz(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new bizzCount = 0;
- for(new biz = 0; biz < MAX_BIZZ_PER_PLAYER; biz++)
- {
- if(PlayerBizzID[playerid][biz] != -1)
- {
- bizzCount ++;
- }
- }
- if(bizzCount == 0) return SysMsg(playerid,"Você não tem empresas para vender.");
- new bool:soldBizz = false;
- for(new h = 0; h < MAX_BIZZ; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.5, BizzData[h][oPosX], BizzData[h][oPosY], BizzData[h][oPosZ]))
- {
- for(new b = 0; b < MAX_BIZZ_PER_PLAYER; b++)
- {
- if(PlayerBizzID[playerid][b] == h)
- {
- new bizzValue = BizzData[h][BizzPrice] / 2;
- if(sscanf(params, "s[8]", params)) return SendClientMessageF(playerid, COLOR_WHITE, "Use [/venderbizz confirmar] para confirmar que você deseja vender %s por $%s.", BizzData[h][BizzDescription], format_cash(bizzValue));
- if(strmatch(params, "confirmar"))
- {
- GivePlayerCash(playerid, bizzValue);
- for(new id = 0; id < MAX_BIZZ_PER_PLAYER; id++)
- {
- if(PlayerBizzID[playerid][id] == h)
- {
- PlayerBizzID[playerid][id] = -1;
- break;
- }
- }
- BizzData[h][BizzOwnerSQLID] = 0;
- MySQLUpdateInt(BizzData[h][BizzSQLID], "OwnerSQLID", 0, "bizz");
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM bizzmods WHERE BizzID = %i", BizzData[h][BizzSQLID]);
- mysql_pquery(conn, mquery);
- if(MySpawnID[playerid] == 7 && BizzData[h][BizzSQLID] == BizzSpawn[playerid])
- {
- MySpawnID[playerid] = 1;
- BizzSpawn[playerid] = 0;
- mysql_pqueryf(conn, mquery, "UPDATE players SET MySpawnID = %i, BizzSpawn = %i WHERE id = %i", MySpawnID[playerid], BizzSpawn[playerid], SQLID[playerid]);
- }
- UpdateBizzLabel(h);
- SendClientMessageF(playerid, COLOR_GOLD, "Você vendeu seu negócio (%s) por $%s.",BizzData[h][BizzDescription],format_cash(bizzValue));
- ShowInfoText(playerid,"~g~negócio vendido",5000);
- soldBizz = true;
- break;
- }
- }
- }
- }
- }
- if(soldBizz == false) SysMsg(playerid, "You are not at your business.");
- return true;
- }
- //end of business commands
- //==================== Fim ==================================//
- //9 Clothing/holster commands
- //Clothing/holster commands
- CMD:clothing(playerid)
- {
- gstr[0] = EOS;
- new count = 0;
- for(new t; t < MAX_TOYS; t++)
- {
- if(ToyInfo[playerid][t][tMask] == 1)
- {
- if(!ToyInfo[playerid][t][MaskWorn]) format(sgstr, sizeof(sgstr), "%s\n", GetMaskDescription(ToyInfo[playerid][t][tModelID]));
- else format(sgstr, sizeof(sgstr), "{2735FF}%s{FFFFFF}\n", GetMaskDescription(ToyInfo[playerid][t][tModelID]));
- strcat(gstr, sgstr);
- ClothingSelected[playerid][count] = ToyInfo[playerid][t][tID];
- count ++;
- }
- }
- if(count == 0) Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Roupas - Error", "Você atualmente não possui nenhum objeto de roupa para usar.", "Fechar", "");
- else Dialog_Show(playerid, ClothingMenu, DIALOG_STYLE_LIST, "Itens", gstr, "Selecionar", "Cancelar");
- return true;
- }
- CMD:holster(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetFreeWeaponObjectIndex(playerid) == -1) return SysMsg(playerid, "Você tem atualmente muitas armas coldreed para coldre outro.");
- if(GetPlayerWeapon(playerid) == 0) return SysMsg(playerid, "Você precisa estar segurando uma arma para coldre-lo.");
- new test = 0;
- new wep = GetPlayerWeapon(playerid);
- for(new p; p < sizeof(unholsterWeap); p++)
- {
- if(wep == unholsterWeap[p])
- {
- return SysMsg(playerid, "Não pode guardar esta arma.");
- }
- }
- if(WeaponData[playerid][GetWeaponSlot(wep)][Weapon] != wep) return SysMsg(playerid, "Esta arma não pode ser estofada devido a ser uma arma não permanente.");
- new t = -1;
- for(t = 0; t < MAX_TOYS; t++)
- {
- if(ToyInfo[playerid][t][tModelID] == dropObjectID[wep])
- {
- SetPVarInt(playerid, "isHolster", t);
- for(new l; l < sizeof(HolsterTog); l++)
- {
- if(wep == HolsterTog[l])
- {
- if(IsHolsterTogged[playerid][GetWeaponSlot(wep)] == 1) format(gstr, sizeof(gstr), "{00FF00}Mostrar coldres %s{FFFFFF}\nColuna\nCabeça\nBraço esquerdo\nBraço direito\nMão esquerda\nMão direita\nCoxa esquerda\nCoxa direita\nPé esquerdo\nPé direito\nPanturilha direita\nPanturilha direita\nAntebraço esquerdo\nAntebraço direito\nOmbro esquerdo\nOmbro direito", WeaponNames[wep]);
- else format(gstr, sizeof(gstr), "{FF0000}Ocultar coldre %s{FFFFFF}\nColuna\nCabeça\nBraço esquerdo\nBraço direito\nMão esquerda\nMão direita\nCoxa esquerda\nCoxa direita\nPé esquerdo\nPé direito\nPanturilha direita\nPanturilha direita\nAntebraço esquerdo\nAntebraço direito\nOmbro esquerdo\nOmbro direito", WeaponNames[wep]);
- test = 1;
- SetPVarInt(playerid, "isHolstered", 1);
- }
- }
- break;
- }
- }
- if(GetPVarType(playerid, "isHolster") == 0)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM toys WHERE tPlayer = %i AND tModelID = %i", SQLID[playerid], dropObjectID[wep]);
- mysql_pquery(conn, mquery, "NewHolsterCheck", "dd", playerid, wep);
- }
- if(test == 0) format(gstr, sizeof(gstr), "{FFFFFF}Coluna\nCabeça\nBraço esquerdo\nBraço direito\nMão esquerda\nMão direita\nCoxa esquerda\nCoxa direita\nPé esquerdo\nPé direito\nPanturilha direita\nPanturilha direita\nAntebraço esquerdo\nAntebraço direito\nOmbro esquerdo\nOmbro direito");
- Dialog_Show(playerid, HolsterBone, DIALOG_STYLE_LIST, "{FFFFFF}Coldre | Selecione a parte.", gstr, "Selecionar", "");
- format(gstr, sizeof(gstr), "Você optou por guardar o seu %s, por favor, selecione o osso que você deseja anexá-lo.", WeaponNames[wep]);
- SendClientMessage(playerid, COLOR_YELLOW, gstr);
- return true;
- }
- CMD:resetmask(playerid, params[])
- {
- if(!IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid, AUTHMSG);
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid, "Use: /resetmask [playerid ou parte do nome]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- gstr[0] = EOS;
- new count = 0;
- for(new t = 0; t < MAX_TOYS; t++)
- {
- if(ToyInfo[playa][t][tMask] == 1)
- {
- if(!ToyInfo[playa][t][MaskWorn]) format(gstr, sizeof(gstr), "%s%s (ID %i)\n", gstr, GetMaskDescription(ToyInfo[playa][t][tModelID]), ToyInfo[playa][t][tID]);
- else format(gstr, sizeof(gstr), "%s{2735FF}%s{FFFFFF} (ID %i)\n", gstr, GetMaskDescription(ToyInfo[playa][t][tModelID]), ToyInfo[playa][t][tID]);
- ClothingSelected[playerid][count] = ToyInfo[playa][t][tID];
- count ++;
- }
- }
- if(count == 0) return SendClientMessage(playerid, COLOR_WHITE, "Error:Que o jogador não tem objetos de vestuário.");
- Dialog_Show(playerid, ClothingAdminReset, DIALOG_STYLE_LIST, "Redefinir escala de máscara", gstr, "Selecionar", "Cancelar");
- ResettingMask[playerid] = playa;
- return true;
- }
- CMD:resetallholsters(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new conf[12];
- if(sscanf(params, "s[12]", conf)) return SendSplitMessage(playerid, COLOR_WHITE, "Para redefinir todos os dados do holster, escreva '/resetallholsters confirmar'. Isso limpará as posições para cada arma anexada que você possui e você precisará relogar depois que estiver pronto.");
- if(strmatch(conf, "confirm"))
- {
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM toys WHERE tPlayer = %i AND tMask = 0", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessage(playerid, COLOR_WHITE, "Você "COL_NICEGREEN"resetou{FFFFFF} todos os seus dados do coldre. Por favor, use /logout e re-selecionar seu personagem.");
- return true;
- }
- return true;
- }
- CMD:editvest(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(AttachedObjects[playerid][7][aoModelID] == -1000 || AttachedObjects[playerid][7][aoModelID] == -1001)
- {
- for(new t = 0; t < MAX_TOYS; t++)
- {
- if(ToyInfo[playerid][t][tModelID] == AttachedObjects[playerid][7][aoModelID])
- {
- ToyBeingEdited[playerid] = t;
- }
- }
- if(ToyBeingEdited[playerid] == -1) return SysMsg(playerid, "Ocorreu um erro and you cannot edit your vest.");
- EditingAttachedObject[playerid] = 1;
- EditAttachedObject(playerid, 7);
- SendClientMessage(playerid, COLOR_WHITE, " ");
- SendClientMessage(playerid, COLOR_WHITE, "Selecione uma opção de [Mover] [Girar] ou [Escala] então arraste o [X] [Y] e [Z] botões para editar.");
- SendClientMessage(playerid, COLOR_WHITE, "Pressione o botão Save para terminar ou pressione a tecla de escape para cancelar.");
- return true;
- }
- SysMsg(playerid, "Você não tem um colete.");
- return true;
- }
- CMD:resetvest(playerid)
- {
- if(!Logged{playerid}) return true;
- if(VestType[playerid] == 0) return SysMsg(playerid, "Você deve estar usando um colete para usar este comando.");
- new Float:armor;
- GetPlayerArmour(playerid, armor);
- if(floatround(armor) == 0) return SysMsg(playerid, "Você deve estar usando um colete para usar este comando.");
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM toys WHERE tPlayer = %i AND tModelID = -1000 OR tPlayer = %i AND tModelID = -1001", SQLID[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- for(new id = 0; id < MAX_TOYS; id++)
- {
- if(ToyInfo[playerid][id][tModelID] == -1000 || ToyInfo[playerid][id][tModelID] == -1001)
- {
- ClearToyData(playerid, id);
- }
- }
- if(AttachedObjects[playerid][7][aoToyID] != 0)
- {
- RemovePlayerAttachedObject(playerid, 7);
- AttachedObjects[playerid][7][aoScale][0] = 1.0;
- AttachedObjects[playerid][7][aoScale][1] = 1.0;
- AttachedObjects[playerid][7][aoScale][2] = 1.0;
- AttachedObjects[playerid][7][aoOffset][0] = 0.0;
- AttachedObjects[playerid][7][aoOffset][1] = 0.0;
- AttachedObjects[playerid][7][aoOffset][2] = 0.0;
- AttachedObjects[playerid][7][aoRot][0] = 0.0;
- AttachedObjects[playerid][7][aoRot][1] = 0.0;
- AttachedObjects[playerid][7][aoRot][2] = 0.0;
- }
- GivePlayerVest(playerid);
- return true;
- }
- CMD:vestoff(playerid, params[])
- {
- new Float:armor;
- GetPlayerArmour(playerid, armor);
- if(armor == 0 && (AttachedObjects[playerid][7][aoModelID] == -1000 || AttachedObjects[playerid][7][aoModelID] == -1001))
- {
- RemovePlayerAttachedObject(playerid, 7);
- AttachedObjects[playerid][7][aoModelID] = 0;
- AttachedObjects[playerid][7][aoBone] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "> Vest Removed");
- }
- else return SysMsg(playerid, "Você não pode remover o objeto colete se você tiver alguma quantidade de armadura. Se você deseja tirar o colete, guarde-o em uma casa ou no porta-malas do veículo.");
- return true;
- }
- CMD:removevest(playerid, params[]) return cmd_vestoff(playerid, params);
- CMD:mask(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Mask] == 0) return SysMsg(playerid,"Você não tem uma máscara.");
- if(PlayerImprisoned{playerid}) return SysMsg(playerid,"Você não pode se mascarar na prisão.");
- if(IsPlayerMasked{playerid}) return SysMsg(playerid,"Você já está em máscaras. (/unmask)");
- if((Faction[playerid] != FACTION_COP && Faction[playerid] != FACTION_RESEARCH) && PlayerLevel[playerid] < 8) return SysMsg(playerid, "Você precisa ter pelo menos o nível 8 para usar esse comando.");
- foreach(new i: Player) if(i != playerid) if(ADuty[i] == 0) ShowPlayerNameTagForPlayer(i, playerid, 0);
- MaskLabelNumber[playerid] = MaskStrangerNumber;
- MaskStrangerNumber ++;
- IsPlayerMasked{playerid} = true;
- MaskHideName{playerid} = true;
- FormatHealthLabelText(playerid, HealthVar[playerid], ArmourVar[playerid], 1);
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO strangers (StrangerID, PlayerName, Timestamp, SQLID, IP) VALUES (%i, '%e', %i, %i, '%e')", MaskLabelNumber[playerid], GetName(playerid), gettime(), SQLID[playerid], PlayerIP[playerid]);
- mysql_pquery(conn, mquery);
- UnlockAchievement(playerid, 46);
- format(gstr, sizeof(gstr), "* %s coloca uma máscara. *", NameRP(playerid));
- ProxDetector(15.0, playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_LIGHTRED, "Você está agora mascarado, use /unmask para removê-lo.");
- return true;
- }
- CMD:unmask(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Mask] == 0) return SysMsg(playerid,"Você não tem uma máscara.");
- if(!IsPlayerMasked{playerid}) return SysMsg(playerid,"Você não está usando uma Máscara. (/mask)");
- if(MaskHideName{playerid})
- {
- MaskHideName{playerid} = false;
- MaskLabelNumber[playerid] = 0;
- foreach(new i: Player)
- {
- if(i != playerid)
- {
- ShowPlayerNameTagForPlayer(i, playerid, 1);
- }
- }
- }
- DeleteMaskLabel(playerid);
- format(gstr, sizeof(gstr),"* %s tira a máscara. *", NameRP(playerid));
- ProxDetector(5.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_LIGHTRED, "Você removeu sua máscara.");
- IsPlayerMasked{playerid} = false;
- return true;
- }
- //end of clothing/holster commands
- //==================== Fim ==================================//
- //10 Animation Commands
- //Animation Commands
- CMD:animlist(playerid, params[])
- {
- SendClientMessage(playerid,COLOR_YELLOW,"___________________________________________________________________________________________________________________");
- SendClientMessage(playerid, COLOR_RED, "Available Animation comandos:");
- SendClientMessage(playerid, COLOR_WHITE, "/caircosta /cairfrente /caircosta2 /ferido2 /metepe /empurrar /empurrarabaixado /renderse /bomba /bebado /rir /salda /cruzarbracos /deitar(2) /dormir /armagolpe");
- SendClientMessage(playerid, COLOR_WHITE, "/basket /cabecada /medico /sprayanim /apontar /kungfu /box /colocandomascara /guardarcelular /pegarcelular /bat /acendercigarro /tapcig");
- SendClientMessage(playerid, COLOR_WHITE, "/cobrar /crack /fumaranim /(sentarc)sentarcao /chat /dancar /xingar /strip /cover /vomitar /comendo /sentar(2) /recarregar /jogarperto ");
- SendClientMessage(playerid, COLOR_WHITE, "/cobrirosto /maoestomago /rolartras /carjacked /carjack /cansado /tapavirando /sejogafrente /carrofechado /jogarlonge");
- SendClientMessage(playerid, COLOR_WHITE, "/agitar /dedodomeio /gritando /faca /cop /cotovelada /joelhocabeca /chutepulando /bicuda /pegapeso /colocarnochao /sinaltransito ");
- SendClientMessage(playerid, COLOR_WHITE, "/gopearnochao /aim /mijar /escorar /car /gcantar /bracobalcao /darbebida /lavarmaos /oculos /deitarcama");
- SendClientMessage(playerid, COLOR_WHITE, "/passarcartao /abaixarmaodireita /taxid /taxie /cocarsaco /copmove /bravo /agitar2 /saque /cadeira");
- SendClientMessage(playerid, COLOR_WHITE, "/fbeber /viratchau /rap /awwyeah /drogado /caixaeletronico /observado /gritar /olhavolta /afastar /espingarda");
- SendClientMessage(playerid, COLOR_WHITE, "/taxi /trotar /sorrateiro /dj /halt /bracojanela /flex");
- SendClientMessage(playerid,COLOR_YELLOW,"\n");
- return true;
- }
- CMD:deitarcama(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "INT_HOUSE","BED_In_R",4.0,0,0,0,1,1); //CMD: /inbedleft
- return true;
- }
- CMD:inbedright(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "INT_HOUSE","BED_In_L",4.0,0,0,0,1,1); //CMD: /inbedright
- return true;
- }
- CMD:carjacked(playerid, params[])
- {
- if(isnull(params)) return SysMsg(playerid,"Use: /carjacked [1-2]");
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"PED","CAR_jackedLHS",4.0,0,1,1,1,0);
- case 2: LoopingAnim(playerid,"PED","CAR_jackedRHS",4.0,0,1,1,1,0);
- default: SysMsg(playerid,"Use: /carjacked [1-2 only]");
- }
- return true;
- }
- CMD:renderse(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "ROB_BANK","SHP_HandsUp_Scr", 4.0, 0, 1, 1, 1, 0);
- return true;
- }
- CMD:pegarcelular(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- SetPlayerSpecialAction(playerid,SPECIAL_ACTION_USECELLPHONE);
- if(AttachedObjects[playerid][6][aoModelID] != 0)
- {
- RemovePlayerAttachedObject(playerid, 6);
- }
- AttachedObjects[playerid][6][aoModelID] = 330;
- AttachedObjects[playerid][6][aoBone] = 6;
- SetPlayerAttachedObject(playerid, 6, 330, 6);
- return true;
- }
- CMD:guardarcelular(playerid, params[])
- {
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- SetPlayerSpecialAction(playerid,SPECIAL_ACTION_STOPUSECELLPHONE);
- RemovePlayerAttachedObject(playerid, 6);
- AttachedObjects[playerid][6][aoModelID] = 0;
- AttachedObjects[playerid][6][aoBone] = 0;
- return true;
- }
- CMD:bebado(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PED","WALK_DRUNK",4.1,1,1,1,1,1);
- return true;
- }
- CMD:bomba(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- ClearAnimations(playerid);
- LoopingAnim(playerid, "BOMBER","BOM_Plant_Loop",4.0,1,0,0,1,0); // Place Bomb
- return true;
- }
- CMD:rir(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "RAPPING", "Laugh_01", 4.0, 0, 0, 0, 0, 0); // Laugh
- return true;
- }
- CMD:chorar(playerid)
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"GRAVEYARD","mrnM_loop", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:colocandomascara(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "SHOP", "ROB_Shifty", 4.0, 0, 0, 0, 0, 0); // Rob Lookout
- return true;
- }
- CMD:apontar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "SHOP", "ROB_Loop_Threat", 4.0, 1, 0, 0, 0, 0); // Rob
- return true;
- }
- CMD:cruzarbracos(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "COP_AMBIENT", "Coplook_loop", 4.0, 0, 1, 1, 1, -1); // Arms crossed
- return true;
- }
- CMD:deitar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"BEACH", "bather", 4.0, 1, 0, 0, 0, 0); // Lay down
- return true;
- }
- CMD:cover(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "ped", "cower", 3.0, 1, 0, 0, 0, 0); // Taking Cover
- return true;
- }
- CMD:vomitar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "FOOD", "EAT_Vomit_P", 3.0, 0, 0, 0, 0, 0); // Vomit
- return true;
- }
- CMD:comendo(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "FOOD", "EAT_Burger", 3.0, 0, 0, 0, 0, 0); // Eat Burger
- return true;
- }
- CMD:acenar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "ON_LOOKERS", "wave_loop", 4.0, 1, 0, 0, 0, 0); // Wave
- return true;
- }
- CMD:acenar2(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "KISSING", "gfwave2", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:slapass(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "SWEET", "sweet_ass_slap", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:cobrar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "DEALER", "DEALER_DEAL", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:crack(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:ferido(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "CRACK", "crckidle1", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:dormir(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "CRACK", "crckidle2", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:fumaranim(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /fumaranim [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0);
- case 2: LoopingAnim(playerid,"SMOKING", "F_smklean_loop", 4.0, 1, 0, 0, 0, 0);
- case 3: LoopingAnim(playerid,"SMOKING","M_smkstnd_loop", 4.0, 1, 0, 0, 0, 0);
- case 4: LoopingAnim(playerid,"SMOKING","M_smk_out", 4.0, 1, 0, 0, 0, 0);
- default: SysMsg(playerid,"Use: /fumaranim [1-4]");
- }
- return true;
- }
- CMD:sentarchao(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"BEACH", "ParkSit_M_loop", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:sentarc(playerid, params[]) return cmd_sentarchao(playerid, params);
- CMD:chat(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PED","IDLE_CHAT",4.0,1,0,0,1,1);
- return true;
- }
- CMD:xingar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"PED","fucku",4.0,0,0,0,0,0);
- return true;
- }
- CMD:fucku2(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "RIOT", "riot_fuku", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:kungfu(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(!FightStyleLearned[playerid]{FS_KUNGFU}) return SysMsg(playerid,"You must learn Kung Fu primeiro.");
- LoopingAnim(playerid,"PARK","Tai_Chi_Loop",4.0,1,0,0,0,0);
- return true;
- }
- CMD:sentar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PED","SEAT_down",4.1,0,0,0,1,0);
- return true;
- }
- CMD:fsentar(playerid)
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"SUNBATHE","SBATHE_F_LieB2Sit",4.1,0,0,0,1,0);
- return true;
- }
- CMD:eatsit(playerid)
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "FOOD", "FF_Sit_Loop", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:bbat(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /bbat [1-2]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "CRACK", "Bbalbat_Idle_01",4.0,1,0,0,0,0);
- case 2: LoopingAnim(playerid, "CRACK", "Bbalbat_Idle_02",4.0,1,0,0,0,0);
- }
- return true;
- }
- CMD:seat(playerid, params[]) return cmd_sentar(playerid, params);
- CMD:fseat(playerid) return cmd_fsentar(playerid);
- CMD:sinaltransito(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /direct [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "POLICE","CopTraf_Come",4.0,1,0,0,0,0);
- case 2: LoopingAnim(playerid, "POLICE","CopTraf_Away",4.0,1,0,0,0,0);
- case 3: LoopingAnim(playerid, "POLICE","CopTraf_Stop",4.0,1,0,0,0,0);
- case 4: LoopingAnim(playerid, "POLICE","CopTraf_Left",4.0,1,0,0,0,0);
- default: SysMsg(playerid,"Use: /direct [1-4]");
- }
- return true;
- }
- CMD:oculos(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "goggles","goggles_put_on",4.0,0,0,0,0,0);
- return true;
- }
- CMD:sit2(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "INT_HOUSE","LOU_In",4.0,0,0,0,1,0);
- return true;
- }
- CMD:cadeira(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /cadeira [1-6]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "INT_OFFICE", "OFF_Sit_Type_Loop", 4.0, 1, 0, 0, 1, 0);
- case 2: LoopingAnim(playerid, "INT_OFFICE", "OFF_Sit_Bored_Loop", 4.0, 1, 0, 0, 1, 0);
- case 3: LoopingAnim(playerid, "INT_OFFICE", "OFF_Sit_In", 4.0, 0, 0, 0, 1, 1);
- case 4: LoopingAnim(playerid, "JST_BUISNESS", "girl_02", 4.0, 0, 0, 0, 1, 1);
- case 5: LoopingAnim(playerid, "MISC", "seat_talk_01", 4.0, 0, 0, 0, 1, 1);
- case 6: LoopingAnim(playerid, "MISC", "seat_talk_02", 4.0, 0, 0, 0, 1, 1);
- default: SysMsg(playerid,"Use: /chairsit [1-6]");
- }
- return true;
- }
- CMD:caircosta(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid, "You may not perform this action in a vehicle.");
- LoopingAnim(playerid,"PED","KO_skid_front",4.1,0,1,1,1,0);
- return true;
- }
- CMD:caircosta2(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid, "You may not perform this action in a vehicle.");
- LoopingAnim(playerid,"PED", "BIKE_fall_off",4.1,0,1,1,1,0);
- return true;
- }
- CMD:cairfrente(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "PED","FLOOR_hit_f", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:injured(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "SWEET", "Sweet_injuredloop", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:salda(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /salda [1-3]");
- switch(strval(params))
- {
- case 1: OnePlayAnim(playerid,"GANGS","hndshkba",4.0,0,0,0,0,0);
- case 2: OnePlayAnim(playerid,"GANGS","hndshkda",4.0,0,0,0,0,0);
- case 3: OnePlayAnim(playerid,"GANGS","hndshkfa_swt",4.0,0,0,0,0,0);
- default: SysMsg(playerid,"Use: /salda [1-3]");
- }
- return true;
- }
- CMD:gcantar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /gsign [1-10]");
- switch(strval(params))
- {
- case 1: OnePlayAnim(playerid, "GHANDS", "gsign1", 3.5, 0, 1, 1, 1, 1);
- case 2: OnePlayAnim(playerid, "GHANDS", "gsign1LH", 3.5, 0, 1, 1, 1, 1);
- case 3: OnePlayAnim(playerid, "GHANDS", "gsign2", 3.5, 0, 1, 1, 1, 1);
- case 4: OnePlayAnim(playerid, "GHANDS", "gsign2LH", 3.5, 0, 1, 1, 1, 1);
- case 5: OnePlayAnim(playerid, "GHANDS", "gsign3", 3.5, 0, 1, 1, 1, 1);
- case 6: OnePlayAnim(playerid, "GHANDS", "gsign3LH", 3.5, 0, 1, 1, 1, 1);
- case 7: OnePlayAnim(playerid, "GHANDS", "gsign4", 3.5, 0, 1, 1, 1, 1);
- case 8: OnePlayAnim(playerid, "GHANDS", "gsign4LH", 3.5, 0, 1, 1, 1, 1);
- case 9: OnePlayAnim(playerid, "GHANDS", "gsign5", 3.5, 0, 1, 1, 1, 1);
- case 10: OnePlayAnim(playerid, "GHANDS", "gsign5LH", 3.5, 0, 1, 1, 1, 1);
- default: cmd_gcantar(playerid, "");
- }
- return true;
- }
- CMD:salute(playerid)
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "GHANDS", "gsign5LH", 3.5, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:rap(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /rap [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"RAPPING","RAP_A_Loop",4.0,1,0,0,0,0);
- case 2: LoopingAnim(playerid,"RAPPING","RAP_C_Loop",4.0,1,0,0,0,0);
- case 3: LoopingAnim(playerid,"GANGS","prtial_gngtlkD",4.0,1,0,0,0,0);
- case 4: LoopingAnim(playerid,"GANGS","prtial_gngtlkH",4.0,1,0,0,1,1);
- default: SysMsg(playerid,"Use: /rap [1-4]");
- }
- return true;
- }
- CMD:empurrar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"GANGS","shake_cara",4.0,0,0,0,0,0);
- return true;
- }
- CMD:metepe(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"POLICE","Door_Kick",4.0,0,0,0,0,0);
- return true;
- }
- CMD:empurrarabaixado(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"GANGS","shake_carSH",4.0,0,0,0,0,0);
- return true;
- }
- CMD:sprayanim(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"SPRAYCAN","spraycan_full",4.0,0,0,0,0,0);
- return true;
- }
- CMD:cabecada(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"WAYFARER","WF_Fwd",4.0,0,0,0,0,0);
- return true;
- }
- CMD:medico(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"MEDIC","CPR",4.0,0,0,0,0,0);
- return true;
- }
- CMD:cobrirosto(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PED","KO_shot_face",4.0,0,1,1,1,0);
- return true;
- }
- CMD:maoestomago(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PED","KO_shot_stom",4.0,0,1,1,1,0);
- return true;
- }
- CMD:sejogafrente(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PED","EV_dive",4.0,0,1,1,1,0);
- return true;
- }
- CMD:cansado(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"FAT","IDLE_tired",3.0,1,0,0,0,0);
- return true;
- }
- CMD:tapavirando(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"PED","BIKE_elbowL",4.0,0,0,0,0,0);
- return true;
- }
- CMD:rolartras(playerid)
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PED","BIKE_fallR",4.0,0,1,1,1,0);
- return true;
- }
- CMD:carrofechado(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"PED","CAR_doorlocked_LHS",4.0,0,0,0,0,0);
- return true;
- }
- CMD:carjack(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /carjack [1-4]");
- switch(strval(params))
- {
- case 1: OnePlayAnim(playerid,"PED","CAR_pulloutL_LHS",4.0,0,0,0,0,0);
- case 2: OnePlayAnim(playerid,"PED","CAR_pulloutL_RHS",4.0,0,0,0,0,0);
- case 3: OnePlayAnim(playerid,"PED","CAR_pullout_LHS",4.0,0,0,0,0,0);
- case 4: OnePlayAnim(playerid,"PED","CAR_pullout_RHS",4.0,0,0,0,0,0);
- default: SysMsg(playerid,"Use: /carjack [1-4 only]");
- }
- return true;
- }
- CMD:hoodfrisked(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"POLICE","crm_drgbst_01",4.0,0,1,1,1,0);
- return true;
- }
- CMD:acendercigarro(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"SMOKING","M_smk_in",3.0,0,0,0,0,0);
- return true;
- }
- CMD:tapcig(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"SMOKING","M_smk_tap",3.0,0,0,0,0,0);
- return true;
- }
- CMD:bracojanela(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(IsBus(GetPlayerVehicleID(playerid))) return SysMsg(playerid, "You cannot use this animation in a bus.");
- if(GetPlayerVehicleSeat(playerid) == 0 || GetPlayerVehicleSeat(playerid) == 2) OnePlayAnim(playerid, "CAR", "Tap_hand", 4.0,0,1,1,1,0);
- else return SendClientMessage(playerid, COLOR_RED, "You must be in a vehicle and in the correct seat to use this animation.");
- return true;
- }
- CMD:bat(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"BASEBALL","Bat_IDLE",4.0,1,1,1,1,0);
- return true;
- }
- CMD:box(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(!FightStyleLearned[playerid]{FS_BOXING}) return SysMsg(playerid,"You have not learned Boxing.");
- LoopingAnim(playerid,"GYMNASIUM","GYMshadowbox",4.0,1,1,1,1,0);
- return true;
- }
- CMD:deitar2(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"SUNBATHE","Lay_Bac_in",3.0,0,1,1,1,0);
- return true;
- }
- CMD:agitar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"RIOT","RIOT_CHANT",4.0,1,1,1,1,0);
- return true;
- }
- CMD:dedodomeio(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"RIOT","RIOT_FUKU",2.0,0,0,0,0,0);
- return true;
- }
- CMD:fuckyou(playerid, params[]) return cmd_dedodomeio(playerid, params);
- CMD:gritando(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"RIOT","RIOT_shout",4.0,1,0,0,0,0);
- return true;
- }
- CMD:cop(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"SWORD","sword_block",50.0,0,1,1,1,1);
- return true;
- }
- CMD:cotovelada(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"FIGHT_D","FightD_3",4.0,0,1,1,0,0);
- return true;
- }
- CMD:joelhocabeca(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"FIGHT_D","FightD_2",4.0,0,1,1,0,0);
- return true;
- }
- CMD:armagolpe(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"FIGHT_D","FightD_IDLE",4.0,1,1,1,1,0);
- return true;
- }
- CMD:gopearnochao(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"FIGHT_B","FightB_G",4.0,0,0,0,0,0);
- return true;
- }
- CMD:chutepulando(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"FIGHT_C","FightC_M",4.0,0,1,1,0,0);
- return true;
- }
- CMD:bicuda(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"FIGHT_D","FightD_G",4.0,0,0,0,0,0);
- return true;
- }
- CMD:jogarperto(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"GRENADE","WEAPON_throwu",4.0,0,0,0,0,0);
- return true;
- }
- CMD:jogarlonge(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid,"GRENADE","WEAPON_throw",4.0,0,0,0,0,0);
- return true;
- }
- CMD:cruzabracos2(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"DEALER","DEALER_IDLE",4.0,1,0,0,0,0);
- return true;
- }
- CMD:mijar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_PISSING);
- return true;
- }
- CMD:piss(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_PISSING);
- return true;
- }
- CMD:wank(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid,"PAULNMAC","wank_loop",4.0,1,0,0,0,0);
- if(IsInHouseID[playerid] != -1 && HouseData[IsInHouseID[playerid]][HouseOwnerSQLID] == SQLID[playerid]) UnlockAchievement(playerid, 33);
- return true;
- }
- CMD:faca(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /faca [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"KNIFE","KILL_Knife_Ped_Damage",4.0,0,1,1,1,0);
- case 2: LoopingAnim(playerid,"KNIFE","KILL_Knife_Ped_Die",4.0,0,1,1,1,0);
- case 3: OnePlayAnim(playerid,"KNIFE","KILL_Knife_Player",4.0,0,0,0,0,0);
- case 4: LoopingAnim(playerid,"KNIFE","KILL_Partial",4.0,0,1,1,1,1);
- default: SysMsg(playerid,"Use: /faca [1-4]");
- }
- return true;
- }
- CMD:basket(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /basket [1-6]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"BSKTBALL","BBALL_idleloop",4.0,1,0,0,0,0);
- case 2: OnePlayAnim(playerid,"BSKTBALL","BBALL_Jump_Shot",4.0,0,0,0,0,0);
- case 3: OnePlayAnim(playerid,"BSKTBALL","BBALL_pickup",4.0,0,0,0,0,0);
- case 4: LoopingAnim(playerid,"BSKTBALL","BBALL_run",4.1,1,1,1,1,1);
- case 5: LoopingAnim(playerid,"BSKTBALL","BBALL_def_loop",4.0,1,0,0,0,0);
- case 6: LoopingAnim(playerid,"BSKTBALL","BBALL_Dnk",4.0,1,0,0,0,0);
- default: SysMsg(playerid,"Use: /basket [1-6]");
- }
- return true;
- }
- CMD:recarregar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /reload [pistol/rifle]");
- if(strcmp("pistol", params, true) == 0) OnePlayAnim(playerid,"COLT45","colt45_reload",4.0,0,0,0,0,0);
- else if(strcmp("rifle", params, true) == 0) OnePlayAnim(playerid,"UZI","UZI_reload",4.0,0,0,0,0,0);
- else SysMsg(playerid,"Use: /reload [pistol/rifle]");
- return true;
- }
- CMD:gwalk(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /gwalk [1/2]");
- if(strval(params)) LoopingAnim(playerid,"PED","WALK_gang1",4.1,1,1,1,1,1);
- else if(strval(params)) LoopingAnim(playerid,"PED","WALK_gang2",4.1,1,1,1,1,1);
- else SysMsg(playerid,"Use: /gwalk [1/2]");
- return true;
- }
- CMD:aim(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /aim [1-3]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"PED","gang_gunstand",4.0,1,1,1,1,1);
- case 2: LoopingAnim(playerid,"PED","Driveby_L",4.0,0,1,1,1,1);
- case 3: LoopingAnim(playerid,"PED","Driveby_R",4.0,0,1,1,1,1);
- default: SysMsg(playerid,"Use: /aim [1-3]");
- }
- return true;
- }
- CMD:escorar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /escorar [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"GANGS","leanIDLE",4.0,0,1,1,1,0);
- case 2: LoopingAnim(playerid,"MISC","Plyrlean_loop",4.0,0,1,1,1,0);
- case 3: LoopingAnim(playerid,"RYDER","Van_Lean_R",4.0,0,1,1,1,0);
- case 4: LoopingAnim(playerid,"GANGS","leanIDLE",4.0,0,0,1,1,1);
- default: SysMsg(playerid,"Use: /escorar [1-4]");
- }
- return true;
- }
- CMD:car(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /car [1-3]");
- switch(strval(params))
- {
- case 1:
- {
- ClearAnimations(playerid);
- LoopingAnim(playerid, "CAR", "Fixn_Car_Out", 4.1, 0, 1, 1, 1, 1); // Twice so that it applies.
- SetTimerEx("CarAnim1", 125, false, "i", playerid);
- SetTimerEx("CarAnim2", 1500, false, "i", playerid);
- }
- case 2: LoopingAnim(playerid, "CAR", "Fixn_Car_Out", 4.1, 0, 1, 1, 1, 1);
- case 3: LoopingAnim(playerid, "CAR", "flag_drop", 4.1, 0, 1, 1, 1, 1);
- default: SysMsg(playerid,"Use: /car [1-3 only]");
- }
- return true;
- }
- GREENSIDE::CarAnim1(playerid)
- {
- LoopingAnim(playerid, "CAR", "Fixn_Car_Out", 4.1, 0, 1, 1, 1, 1);
- return true;
- }
- GREENSIDE::CarAnim2(playerid)
- {
- LoopingAnim(playerid,"CAR", "Fixn_Car_Loop", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:clear(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(IsPlayerInAnyVehicle(playerid)) return true;
- ClearAnimations(playerid);
- OnePlayAnim(playerid, "CARRY", "crry_prtial", 1.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:strip(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /strip [1-7]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"STRIP", "strip_A", 4.1, 1, 1, 1, 1, 1);
- case 2: LoopingAnim(playerid,"STRIP", "strip_B", 4.1, 1, 1, 1, 1, 1);
- case 3: LoopingAnim(playerid,"STRIP", "strip_C", 4.1, 1, 1, 1, 1, 1);
- case 4: LoopingAnim(playerid,"STRIP", "strip_D", 4.1, 1, 1, 1, 1, 1);
- case 5: LoopingAnim(playerid,"STRIP", "strip_E", 4.1, 1, 1, 1, 1, 1);
- case 6: LoopingAnim(playerid,"STRIP", "strip_F", 4.1, 1, 1, 1, 1, 1);
- case 7: LoopingAnim(playerid,"STRIP", "strip_G", 4.1, 1, 1, 1, 1, 1);
- default: SysMsg(playerid,"Use: /strip [1-7 only]");
- }
- return true;
- }
- CMD:dancar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid,"Use: /dancar [1-11]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"DANCING", "DAN_Loop_A", 4.1, 1, 1, 1, 1, 1);
- case 2: LoopingAnim(playerid,"DANCING", "dnce_M_a", 4.1, 1, 0, 0, 1, 1);
- case 3: LoopingAnim(playerid,"DANCING", "dnce_M_b", 4.1, 1, 1, 1, 1, 1);
- case 4: LoopingAnim(playerid,"DANCING", "dnce_M_c", 4.1, 1, 1, 1, 1, 1);
- case 5: LoopingAnim(playerid,"DANCING", "dnce_M_d", 4.1, 1, 0, 0, 1, 1);
- case 6: LoopingAnim(playerid,"DANCING", "dnce_M_e", 4.1, 1, 0, 0, 1, 1);
- case 7: LoopingAnim(playerid,"DANCING", "bd_clap1", 4.1, 1, 1, 1, 1, 1);
- case 8: SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE1);
- case 9: SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE2);
- case 10: SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE3);
- case 11: SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DANCE4);
- default: SysMsg(playerid,"Use: /dancar [1-11]");
- }
- return true;
- }
- CMD:walk(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /walk [1 - 10]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid,"PED","WALK_GANG1", 4.1, 1, 1, 1, 1, 1);
- case 2: LoopingAnim(playerid,"PED","WALK_GANG2", 4.1, 1, 1, 1, 1, 1);
- case 3: LoopingAnim(playerid,"PED","WALK_FAT", 4.1, 1, 1, 1, 1, 1);
- case 4: LoopingAnim(playerid,"PED","WALK_FATOLD", 4.1, 1, 1, 1, 1, 1);
- case 5: LoopingAnim(playerid,"PED","WALK_OLD", 4.1, 1, 1, 1, 1, 1);
- case 6: LoopingAnim(playerid,"PED","WOMAN_WALKNORM", 4.1, 1, 1, 1, 1, 1);
- case 7: LoopingAnim(playerid,"PED","WOMAN_WALKSEXY", 4.1, 1, 1, 1, 1, 1);
- case 8: LoopingAnim(playerid,"MUSCULAR","MUSCLEWALK", 4.1, 1, 1, 1, 1, 1);
- case 9: LoopingAnim(playerid,"PED","WALK_WUZI", 4.1, 1, 1, 1, 1, 1);
- case 10: LoopingAnim(playerid, "PED", "WALK_civi", 4.1, 1, 1, 1, 1, 1);
- default: SysMsg(playerid, "Use: /walk [1 - 10]");
- }
- return true;
- }
- CMD:bracobalcao(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "BAR", "BARman_idle", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:darbebida(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "BAR", "Barserve_give", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:lavarmaos(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "BD_FIRE", "wash_up", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:pegapeso(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "Freeweights", "gym_free_pickup", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:colocarnochao(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "Freeweights", "gym_free_putdown", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:passarcartao(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "HEIST9", "Use_SwipeCard", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:abaixarmaodireita(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "MISC", "Case_pickup", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:taxid(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "MISC", "Hiker_Pose", 3.5, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:taxie(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "MISC", "Hiker_Pose_L", 3.5, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:cocarsaco(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "MISC", "Scratchballs_01", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:copmove(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "POLICE", "Cop_move_FWD", 4.0, 1, 1, 1, 1, 1);
- return true;
- }
- CMD:bravo(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "RIOT", "RIOT_ANGRY", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:agitar2(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "RIOT", "RIOT_ANGRY_B", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:saque(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "ROB_BANK", "CAT_Safe_Rob", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:fbeber(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "BAR", "dnk_stndF_loop", 4.0, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:viratchau(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "BD_FIRE", "bd_gf_wave", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:flex(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /flex [1-2]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "benchpress", "gym_bp_celebrate", 4.1, 1, 0, 0, 0, 0);
- case 2: OnePlayAnim(playerid, "Freeweights", "gym_free_celebrate", 4.1, 0, 0, 0, 0, 0);
- default: SysMsg(playerid, "Use: /flex [1-2]");
- }
- return true;
- }
- CMD:awwyeah(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "CASINO", "manwinB", 4.1, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:drogado(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /drogado [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "CRACK", "crckidle3", 4.1, 1, 0, 0, 0, 0);
- case 2: LoopingAnim(playerid, "CRACK", "crckidle4", 4.1, 1, 0, 0, 0, 0);
- case 3: LoopingAnim(playerid, "PAULNMAC", "pnm_loop_A", 4.1, 1, 0, 0, 0, 0);
- case 4: LoopingAnim(playerid, "PAULNMAC", "pnm_loop_B", 4.1, 1, 0, 0, 0, 0);
- default: SysMsg(playerid, "Use: /drogado [1-4]");
- }
- return true;
- }
- CMD:caixaeletronico(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /caixaeletronico [1-2]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "INT_SHOP", "shop_cashier", 4.1, 1, 0, 0, 0, 0);
- case 2: LoopingAnim(playerid, "SHOP", "shp_serve_loop", 4.1, 1, 0, 0, 0, 0);
- default: SysMsg(playerid, "Use: /caixaeletronico [1-2]");
- }
- return true;
- }
- CMD:hegebeface(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "PED", "facanger", 4.1, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:observado(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "ON_LOOKERS", "panic_point", 4.1, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:gritar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /shout [1-2]");
- switch(strval(params))
- {
- case 1: OnePlayAnim(playerid, "ON_LOOKERS", "shout_01", 4.1, 0, 0, 0, 0, 0);
- case 2: OnePlayAnim(playerid, "ON_LOOKERS", "shout_02", 4.1, 0, 0, 0, 0, 0);
- default: SysMsg(playerid, "Use: /shout [1-2]");
- }
- return true;
- }
- CMD:olhavolta(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "ON_LOOKERS", "lkaround_loop", 4.1, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:afastar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "PED", "handscower", 4.1, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:espingarda(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "PED", "idle_armed", 4.1, 1, 0, 0, 0, 0);
- return true;
- }
- CMD:taxi(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "PED", "idle_taxi", 4.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:trotar(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /trotar [1-2]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "PED", "jog_maleA", 4.1, 1, 1, 1, 1, 1);
- case 2: LoopingAnim(playerid, "PED", "jog_femaleA", 4.1, 1, 1, 1, 1, 1);
- default: SysMsg(playerid, "Use: /trotar [1-2]");
- }
- return true;
- }
- CMD:sorrateiro(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- LoopingAnim(playerid, "PED", "player_sneak", 4.1, 1, 1, 1, 0, 0);
- return true;
- }
- CMD:dj(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /dj [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "SCRATCHING", "scdlulp", 4.1, 1, 0, 0, 0, 0);
- case 2: LoopingAnim(playerid, "SCRATCHING", "scdrdlp", 4.1, 1, 0, 0, 0, 0);
- case 3: LoopingAnim(playerid, "SCRATCHING", "scdrulp", 4.1, 1, 0, 0, 0, 0);
- case 4: LoopingAnim(playerid, "SCRATCHING", "scshrtl", 4.1, 1, 0, 0, 0, 0);
- default: SysMsg(playerid, "Use: /dj [1-4]");
- }
- return true;
- }
- CMD:halt(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- OnePlayAnim(playerid, "SWAT", "swt_lkt", 4.1, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:blowjob(playerid, params[])
- {
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você é incapaz de executar este comando como você está abatido.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, COLOR_RED, "Você deve estar a pé para realizar esta animação.");
- if(isnull(params)) return SysMsg(playerid, "Use: /blowjob [1-4]");
- switch(strval(params))
- {
- case 1: LoopingAnim(playerid, "BLOWJOBZ", "BJ_COUCH_LOOP_W", 4.1, 1, 0, 0, 1, 1);
- case 2: LoopingAnim(playerid, "BLOWJOBZ", "BJ_COUCH_LOOP_P", 4.1, 1, 0, 0, 1, 1);
- case 3: LoopingAnim(playerid, "BLOWJOBZ", "BJ_STAND_LOOP_W", 4.1, 1, 0, 0, 1, 1);
- case 4: LoopingAnim(playerid, "BLOWJOBZ", "BJ_STAND_LOOP_P", 4.1, 1, 0, 0, 1, 1);
- default: SysMsg(playerid, "Use: /blowjob [1-4]");
- }
- return true;
- }
- CMD:facepalm(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- format(gstr, sizeof(gstr),"* %s suspira e coloca sua mão no rosto. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- UnlockAchievement(playerid, 32);
- if(!IsPlayerInAnyVehicle(playerid)) OnePlayAnim(playerid, "MISC", "plyr_shkhead", 1.25, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:breathe(playerid, params[])
- {
- new index = GetFreePlayerObjectIndex(playerid);
- if(index == -1) return SysMsg(playerid, "Você não pode usar esse recurso como você tem muitos objetos anexados.");
- SetPlayerAttachedObject(playerid, index, 18677, 2, 0, 0.17, -1.6, 0, 0, 0, 1, 1, 1);
- SetTimerEx("remove_ostick", 3333, 0, "ii", playerid, index);
- return true;
- }
- CMD:vape(playerid) return SysMsg(playerid, "Frick off, hecker.");
- GREENSIDE::remove_ostick(playerid, index)
- {
- RemovePlayerAttachedObject(playerid, index);
- return true;
- }
- //End of animations
- //==================== Fim ==================================//
- //11 Fishing
- //Fishing
- CMD:fish(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- new fishingType = -1, v, Float:vPos[3], Float:ReeferPos[3];
- GetVehiclePos(ReeferID(), ReeferPos[0], ReeferPos[1], ReeferPos[2]);
- if(GetPlayerState(playerid) == 1 && (IsPlayerInRangeOfPoint(playerid,6.0,2111.0522,-98.3380,2.1039) || IsPlayerInRangeOfPoint(playerid, 6.0, -793.7495,-1947.7505,6.7726))) fishingType = 1;
- if(fishingType == -1)
- {
- if(IsPlayerInAnyVehicle(playerid)) v = GetPlayerVehicleID(playerid);
- else v = GetClosestVehicle(playerid);
- if(v == INVALID_VEHICLE_ID || !IsBoat(v)) return SysMsg(playerid,"Você deve estar no local de pesca ou em um recife.");
- GetVehiclePos(v, vPos[0], vPos[1], vPos[2]);
- }
- if(v == ReeferID()) fishingType = 2;
- else if(IsOwnedCar(v) && IsBoat(v) && v != ReeferID()) fishingType = 3;
- else if(IsPlayerInRangeOfPoint(playerid,5.0,ReeferPos[0], ReeferPos[1], ReeferPos[2]) && !IsPlayerInRangeOfPoint(playerid,6.0,2111.0522,-98.3380,2.1039)) fishingType = 2;
- else if(IsPlayerInRangeOfPoint(playerid,5.0, vPos[0], vPos[1], vPos[2])) fishingType = 3;
- if(fishingType == -1) return SysMsg(playerid,"Você deve estar no local de pesca ou em um recife.");
- if(fishingType == 2 && IsPlayerInRangeOfPoint(playerid, 100.0, 2105.352050, -96.437431, 0.725863)) return SysMsg(playerid,"Por favor, leve o reefer para longe da doca antes de pescar.");
- if(fishingType == 3 && IsPlayerInRangeOfPoint(playerid, 300.0, 2105.352050, -96.437431, 0.725863)) return SysMsg(playerid, "Por favor, leve o barco para longe da Baía Palomino Creek antes de pescar.");
- if(Inventory[playerid][FishingPermit] == 0) return SysMsg(playerid,"Você não tem uma licença de pesca.");
- if(Inventory[playerid][FishingRod] == 0) return SysMsg(playerid,"Você não tem uma vara de pescar.");
- if(FishSpamTime[playerid] != 0) return SysMsg(playerid,"Por favor, aguarde antes de pescar novamente.");
- if(Inventory[playerid][FishingBait] <= 0) return SysMsg(playerid,"Você não tem nenhuma isca, vá para a loja de pesca para comprar algumas.");
- if(FishWeight[playerid][0] != -1 && FishWeight[playerid][1] != -1 && FishWeight[playerid][2] != -1 && FishWeight[playerid][3] != -1 && FishWeight[playerid][4] != -1) return SysMsg(playerid,"You can't hold anymore fish.");
- FishingRodHealth[playerid] --;
- MySQLUpdateInt(SQLID[playerid], "FishingRodHealth", FishingRodHealth[playerid], "players");
- if(FishingRodHealth[playerid] <= 0 && Inventory[playerid][FishingRod] == 1)
- {
- Inventory[playerid][FishingRod] = 0;
- FishingRodHealth[playerid] = 0;
- MySQLUpdateInt(SQLID[playerid], "FishingRod", Inventory[playerid][FishingRod], "players");
- format(gstr, sizeof(gstr),"* A vara de pesca de %s quebra em duas partes. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid,COLOR_DARKBLUE,"Sua vara de pescar quebrou ao meio devido suas condições.");
- return true;
- }
- TogglePlayerControllable(playerid, 0);
- if(AttachedObjects[playerid][7][aoModelID] == 0)
- {
- AttachedObjects[playerid][7][aoModelID] = 18632;
- AttachedObjects[playerid][7][aoBone] = 6;
- SetPlayerAttachedObject(playerid, 7, 18632, 6, 0.1, 0.05, 0, 0, 180, 180, 0);
- }
- Inventory[playerid][FishingBait] --;
- MySQLUpdateInt(SQLID[playerid], "FishingBait", Inventory[playerid][FishingBait], "players");
- new rand;
- if(fishingType == 1)
- {
- rand = random(5) + 5;
- format(sgstr, sizeof(sgstr),"* %s começa a pescar fora do cais... *",NameRP(playerid));
- }
- else if(fishingType == 2)
- {
- rand = random(10) + 10;
- format(sgstr, sizeof(sgstr),"* %s começa a pescar fora do Recife... *",NameRP(playerid));
- }
- else if(fishingType == 3)
- {
- fishingType = 2; //set type back to 2 to trigger boat fishing
- rand = random(10) + 10;
- format(sgstr, sizeof(sgstr),"* %s começa a pescar fora do %s... *",NameRP(playerid), GetVehicleName(v));
- }
- FishSpamTime[playerid] = 1;
- OnePlayAnim(playerid, "SAMP", "FishingIdle", 10.0, 0, 0, 0, 1, rand*1000);
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SetTimerEx("OnPlayerFish",(rand*1000),0,"ii",playerid, fishingType);
- return true;
- }
- CMD:peixes(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Por favor, faça primeiro login.");
- for(new f = 0; f < 5; f++)
- {
- if(FishWeight[playerid][f] == -1) SendClientMessageF(playerid,COLOR_DARKBLUE, "Slot de peixe %i: Nome: n/a Peso: n/a",f+1);
- else SendClientMessageF(playerid,COLOR_DARKBLUE, "Slot de peixe %i: Nome: %s Peso: %i kg",f+1,FishName[playerid][f],FishWeight[playerid][f]);
- }
- SendClientMessageF(playerid,COLOR_DARKBLUE, "Isca de pesca: %i, Meu maior recorde de peixe: %i Kg, Durabilidade da vara: %i %%",Inventory[playerid][FishingBait],BiggestFish[playerid],FishingRodHealth[playerid]);
- return true;
- }
- CMD:showfish(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid, "Use: /showfish [playerID ou name]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playa, x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z)) return SysMsg(playerid, "Você deve estar mais perto do jogador.");
- SendClientMessageF(playa, COLOR_DARKBLUE, "%s's fish.", NameRP(playerid));
- for(new f = 0; f < 5; f++)
- {
- if(FishWeight[playerid][f] == -1) SendClientMessageF(playa, COLOR_DARKBLUE, "Slot de peixe %i: Nome: n/a Peso: n/a", f + 1);
- else SendClientMessageF(playa, COLOR_DARKBLUE, "Slot de peixe %i: Nome: %s Peso: %i Lbs", f + 1, FishName[playerid][f], FishWeight[playerid][f]);
- }
- return true;
- }
- CMD:sellfish(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(!IsPlayerInRangeOfPoint(playerid,5.0,2150.601318,-100.634284,2.755812) && !IsPlayerInRangeOfPoint(playerid, 4.5, -800.5269,-1922.8231,9.1117)) return SysMsg(playerid,"Você não está na loja de pesca.");
- if(FishWeight[playerid][0] == -1 && FishWeight[playerid][1] == -1 && FishWeight[playerid][2] == -1 && FishWeight[playerid][3] == -1 && FishWeight[playerid][4] == -1) return SysMsg(playerid,"Você não tem peixe.");
- gstr[0] = EOS;
- for(new f = 0; f < 5; f++)
- {
- if(FishWeight[playerid][f] != -1)
- {
- new fishValue = 3 * FishWeight[playerid][f];
- format(sgstr, sizeof(sgstr), "%s - %iLbs - Vale $%i\n", FishName[playerid][f], FishWeight[playerid][f], fishValue);
- strcat(gstr, sgstr);
- }
- }
- strcat(gstr, "\nSell All");
- Dialog_Show(playerid, FishSell, DIALOG_STYLE_LIST, "Vender peixe", gstr, "Vender", "Cancelar");
- return true;
- }
- CMD:putback(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- new atFishSpot = 0;
- if(GetPlayerSurfingVehicleID(playerid) == ReeferID()) atFishSpot = 1;
- if(GetPlayerVehicleID(playerid) == ReeferID()) atFishSpot = 1;
- if(GetPlayerState(playerid) == 1 && IsPlayerInRangeOfPoint(playerid,6.0,2111.0522,-98.3380,2.1039) || IsPlayerInRangeOfPoint(playerid, 6.0, -793.7495,-1947.7505,6.7726)) atFishSpot = 1;
- new Float:ReeferPos[3]; GetVehiclePos(ReeferID(), ReeferPos[0], ReeferPos[1], ReeferPos[2]);
- if(IsPlayerInRangeOfPoint(playerid,5.0,ReeferPos[0], ReeferPos[1], ReeferPos[2]) && !IsPlayerInRangeOfPoint(playerid,6.0,2111.0522,-98.3380,2.1039)) atFishSpot = 1;
- if(atFishSpot == 0) return SysMsg(playerid,"Você deve estar no ponto de pesca ou em um Reefer para colocar o peixe de volta.");
- if(FishWeight[playerid][0] == -1 && FishWeight[playerid][1] == -1 && FishWeight[playerid][2] == -1 && FishWeight[playerid][3] == -1 && FishWeight[playerid][4] == -1) return SysMsg(playerid,"You have no fish.");
- new SlotToUse;
- if(sscanf(params, "i", SlotToUse)) return SysMsg(playerid,"Use: /putback [número do peixe] *Dica: Uses /peixes para ver os números de peixe*");
- if(SlotToUse > 5 || SlotToUse < 1) return SysMsg(playerid,"ID de peixe inválido! (1 to 5 only)");
- SlotToUse --;
- if(FishWeight[playerid][SlotToUse] == -1) return SysMsg(playerid,"Nenhum peixe naquele slot.");
- format(gstr, sizeof(gstr),"* %s lança um %s de volta a água. *",NameRP(playerid),FishName[playerid][SlotToUse]);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você colocou um %i Lb %s de volta na água.",FishWeight[playerid][SlotToUse],FishName[playerid][SlotToUse]);
- SendClientMessage(playerid,COLOR_SKYBLUE,gstr);
- FishWeight[playerid][SlotToUse] = -1;
- FishName[playerid][SlotToUse][0] = EOS;
- for(new x = 0; x < 5; x++)
- {
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET Fish%iName = %i, Fish%iWeight = %i WHERE id = %i", x + 1, FishName[playerid][x], x+ 1, FishWeight[playerid][x], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- }
- return true;
- }
- CMD:putallback(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- new atFishSpot = 0;
- if(GetPlayerSurfingVehicleID(playerid) == ReeferID()) atFishSpot = 1;
- if(GetPlayerVehicleID(playerid) == ReeferID()) atFishSpot = 1;
- if(GetPlayerState(playerid) == 1 && IsPlayerInRangeOfPoint(playerid,6.0,2111.0522,-98.3380,2.1039) || IsPlayerInRangeOfPoint(playerid, 6.0, -793.7495,-1947.7505,6.7726)) atFishSpot = 1;
- new Float:ReeferPos[3]; GetVehiclePos(ReeferID(), ReeferPos[0], ReeferPos[1], ReeferPos[2]);
- if(IsPlayerInRangeOfPoint(playerid,5.0,ReeferPos[0], ReeferPos[1], ReeferPos[2]) && !IsPlayerInRangeOfPoint(playerid,6.0,2111.0522,-98.3380,2.1039)) atFishSpot = 1;
- if(atFishSpot == 0) return SysMsg(playerid,"Você deve estar no ponto de pesca ou em um Reefer para colocar o peixe de volta.");
- if(FishWeight[playerid][0] == -1 && FishWeight[playerid][1] == -1 && FishWeight[playerid][2] == -1 && FishWeight[playerid][3] == -1 && FishWeight[playerid][4] == -1) return SysMsg(playerid,"You have no fish.");
- new FishCount = 0;
- for(new F = 0; F < 5; F++)
- {
- if(FishWeight[playerid][F] != -1)
- {
- FishWeight[playerid][F] = -1;
- FishName[playerid][F][0] = EOS;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET Fish%iName = %i, Fish%iWeight = %i WHERE id = %i", F + 1, FishName[playerid][F], F+ 1, FishWeight[playerid][F], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- FishCount++;
- }
- }
- format(gstr, sizeof(gstr),"* %s lança um %s de volta a água. *",NameRP(playerid),FishCount);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Você colocou um %i Lb %s de volta na água.",FishCount);
- SendClientMessage(playerid,COLOR_SKYBLUE,gstr);
- return true;
- }
- CMD:fcrate(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new option[24], value[64];
- if(sscanf(params, "s[24]S()[64]", option, value)) return SysMsg(playerid, "Use: /fcrate [take/setup/drop/pickup/store/check]");
- if(strcmp(option, "take", true) == 0)
- {
- new Float:x, Float:y, Float:z;
- for(new i = 0; i < MAX_FISHCRATES; i++)
- {
- if(FishingCrates[i][CrateVehicle] != 0)
- {
- if(Locked{FishingCrates[i][CrateVehicle]}) return SysMsg(playerid, "Esta caixa está firmemente presa ao barco e não pode ser retirada.");
- GetVehiclePos(FishingCrates[i][CrateVehicle], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 10.0, x, y, z))
- {
- new index = GetFreePlayerObjectIndex(playerid), v = FishingCrates[i][CrateVehicle];
- if(index == -1) return SysMsg(playerid, "Você não tem nenhum slots de objeto livre anexado.");
- DestroyDynamicObject(VehObject[v]);
- SetPlayerAttachedObject(playerid, index, GetFishingCrateModelID(FishingCrates[i][CrateType]), 1, -0.057999, 0.659000, 0.000000, 0.000000, 88.099960, -179.699905, 0.499000, 0.559000, 0.414999);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET FishCrate = 0 WHERE id = %i", VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- FishingCrates[i][CrateVehicle] = 0;
- FishingCrates[i][FishingCrateObject] = INVALID_OBJECT_ID;
- HoldingCrate[playerid] = i;
- CrateIndex[playerid] = index;
- VehObject[v] = INVALID_OBJECT_ID;
- format(sgstr, sizeof(sgstr),"* %s pega uma caixa de peixe do %s. *",NameRP(playerid), GetVehicleName(v));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- }
- SysMsg(playerid, "Você não está perto de uma caixa de peixes.");
- }
- else if(strcmp(option, "setup", true) == 0)
- {
- new v = GetNearestVehicle(playerid);
- if(v == INVALID_VEHICLE_ID) return SysMsg(playerid, "Você não está perto de um veículo.");
- if(!IsOwnedCar(v)) return SysMsg(playerid, "O veículo deve ser um veículo próprio.");
- if(!IsCrateVehicle(v)) return SysMsg(playerid, "Este barco não pode segurar uma caixa.");
- if(HoldingCrate[playerid] == -1) return SysMsg(playerid, "Você não está segurando uma caixa de pesca.");
- new c = HoldingCrate[playerid];
- FishingCrates[c][CrateVehicle] = v;
- AttachCrateToVehicle(v, GetFishingCrateModelID(FishingCrates[c][CrateType]));
- RemovePlayerAttachedObject(playerid, CrateIndex[playerid]);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- HoldingCrate[playerid] = -1;
- CrateIndex[playerid] = -1;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET FishCrate = %i WHERE id = %i", FishingCrates[c][CrateType], VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- format(sgstr, sizeof(sgstr),"* %s assegura uma caixa de pesca no %s. *",NameRP(playerid), GetVehicleName(v));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else if(strcmp(option, "drop", true) == 0)
- {
- if(HoldingCrate[playerid] == -1) return SysMsg(playerid, "Você não está segurando uma caixa de pesca.");
- new Float:x, Float:y, Float:z, c = HoldingCrate[playerid];
- GetPlayerPos(playerid, x, y, z);
- FishingCrates[c][FishingCrateObject] = CreateDynamicObject(GetFishingCrateModelID(FishingCrates[c][CrateType]), x, y, z - 1.2, 0, 0, 0, GetPlayerVirtualWorld(playerid));
- FishingCrates[c][CrateLocX] = x;
- FishingCrates[c][CrateLocY] = y;
- FishingCrates[c][CrateLocZ] = z;
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- RemovePlayerAttachedObject(playerid, CrateIndex[playerid]);
- CrateIndex[playerid] = -1;
- HoldingCrate[playerid] = -1;
- return true;
- }
- else if(strcmp(option, "pickup", true) == 0)
- {
- if(HoldingCrate[playerid] != -1) return SysMsg(playerid, "Você já está segurando uma caixa de pesca.");
- for(new i = 0; i < MAX_FISHCRATES; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, FishingCrates[i][CrateLocX], FishingCrates[i][CrateLocY], FishingCrates[i][CrateLocZ]) && IsValidDynamicObject(FishingCrates[i][FishingCrateObject]))
- {
- new index = GetFreePlayerObjectIndex(playerid);
- if(index == -1) return SysMsg(playerid, "Você não tem nenhum slots de objeto livre anexado.");
- DestroyDynamicObject(FishingCrates[i][FishingCrateObject]);
- SetPlayerAttachedObject(playerid, index, GetFishingCrateModelID(FishingCrates[i][CrateType]), 1, -0.057999, 0.659000, 0.000000, 0.000000, 88.099960, -179.699905, 0.499000, 0.559000, 0.414999);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
- HoldingCrate[playerid] = i;
- CrateIndex[playerid] = index;
- FishingCrates[i][FishingCrateObject] = INVALID_OBJECT_ID;
- format(sgstr, sizeof(sgstr),"* %s pega uma caixa de pesca. *",NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- SysMsg(playerid, "Você não está perto de uma caixa de peixes.");
- return true;
- }
- else if(strcmp(option, "guardar", true) == 0)
- {
- if(sscanf(params, "s[24]s[24]", option, value)) return SysMsg(playerid, "Use: /fcrate guardar [slot 1-5 ou all]");
- new Float:x, Float:y, Float:z, c = -1;
- for(new i = 0; i < MAX_FISHCRATES; i++)
- {
- if(FishingCrates[i][CrateVehicle] != 0)
- {
- GetVehiclePos(FishingCrates[i][CrateVehicle], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 10.0, x, y, z))
- {
- c = i;
- break;
- }
- }
- }
- if(c == -1) return SysMsg(playerid, "Você não está perto de um veículo com uma caixa dentro dela.");
- if(GetCurrentCrateSlots(FishingCrates[c][CrateOwner]) == GetMaxCrateSlots(FishingCrates[c][CrateType])) return SysMsg(playerid, "Esta caixa de pesca está cheia.");
- if(IsNumeric(value))
- {
- new slot = strval(value);
- if(slot < 1 || slot > 5) return SysMsg(playerid, "Slot deve ser 1-5 ou ALL");
- slot --;
- if(FishWeight[playerid][slot] == -1) return SysMsg(playerid, "Você não tem um peixe nesse slot.");
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO fishcrates (FishWeight, CrateOwner) VALUES (%i, %i)", FishWeight[playerid][slot], FishingCrates[c][CrateOwner]);
- mysql_pquery(conn, mquery);
- format(sgstr, sizeof(sgstr),"* %s guardar um peixe de %ikg na caixa *",NameRP(playerid), FishWeight[playerid][slot]);
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- FishWeight[playerid][slot] = -1;
- FishName[playerid][slot][0] = EOS;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET Fish%iName = '', Fish%iWeight = -1 WHERE id = %i", slot + 1, slot + 1, SQLID[playerid]);
- mysql_pquery(conn, mquery);
- return true;
- }
- else
- {
- new weight, fishcount;
- for(new f = 0; f < 5; f++)
- {
- if(FishWeight[playerid][f] == -1) continue;
- fishcount ++;
- weight += FishWeight[playerid][f];
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO fishcrates (FishWeight, CrateOwner) VALUES (%i, %i)", FishWeight[playerid][f], FishingCrates[c][CrateOwner]);
- mysql_pquery(conn, mquery);
- FishWeight[playerid][f] = -1;
- FishName[playerid][f][0] = EOS;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET Fish%iName = '', Fish%iWeight = -1 WHERE id = %i", f + 1, f + 1, SQLID[playerid]);
- mysql_pquery(conn, mquery);
- }
- if(fishcount == 0) return SysMsg(playerid, "Não foi possível armazenar qualquer peixe.");
- format(sgstr, sizeof(sgstr),"* %s guarda %i peixes totalizando %ikg na caixa *",NameRP(playerid), fishcount, weight);
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- else if(strcmp(option, "check", true) == 0)
- {
- new Float:x, Float:y, Float:z, c = -1;
- for(new i = 0; i < MAX_FISHCRATES; i++)
- {
- if(FishingCrates[i][CrateVehicle] != 0)
- {
- GetVehiclePos(FishingCrates[i][CrateVehicle], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 10.0, x, y, z))
- {
- c = i;
- break;
- }
- }
- else if(IsPlayerInRangeOfPoint(playerid, 10.0, FishingCrates[i][CrateLocX], FishingCrates[i][CrateLocY], FishingCrates[i][CrateLocZ]))
- {
- c = i;
- break;
- }
- }
- if(c == -1) return SysMsg(playerid, "Você não está perto de um veículo com uma caixa dentro dela.");
- SendClientMessage(playerid, COLOR_WHITE, "[CAIXA DE PEIXE]");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT SUM(FishWeight) AS weight, COUNT(CrateOwner) as rows FROM fishcrates WHERE CrateOwner = %i", FishingCrates[c][CrateOwner]);
- mysql_pquery(conn, mquery, "ShowCrateInfo", "i", playerid);
- return true;
- }
- return true;
- }
- stock GetCurrentCrateSlots(sqlid)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT NULL FROM fishcrates WHERE CrateOwner = %i", sqlid);
- new Cache:result = mysql_query(conn, mquery);
- new num = cache_num_rows();
- cache_delete(result);
- return num;
- }
- stock GetMaxCrateSlots(type)
- {
- switch(type)
- {
- case 1: return 100;
- case 2: return 250;
- case 3: return 500;
- }
- return 100;
- }
- GREENSIDE::ShowCrateInfo(playerid)
- {
- new weight = cache_get_field_content_int(0, "weight"), count = cache_get_field_content_int(0, "rows");
- SendClientMessageF(playerid, COLOR_WHITE, "Peso total: %i (Vale $%s)", weight, format_cash(weight * 3));
- SendClientMessageF(playerid, COLOR_WHITE, "Peixe Total: %i", count);
- }
- CMD:sellcrate(playerid)
- {
- if(!Logged{playerid}) return true;
- if(HoldingCrate[playerid] == -1) return SysMsg(playerid, "Você não está atualmente na posse de uma caixa de pesca.");
- if(!IsPlayerInRangeOfPoint(playerid,5.0,2150.601318,-100.634284,2.755812) && !IsPlayerInRangeOfPoint(playerid, 4.5, -800.5269,-1922.8231,9.1117)) return SysMsg(playerid,"Você não está na loja de pesca.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT SUM(FishWeight) AS weight, COUNT(CrateOwner) as rows FROM fishcrates WHERE CrateOwner = %i", FishingCrates[HoldingCrate[playerid]][CrateOwner]);
- mysql_pquery(conn, mquery, "ProcessCrateSale", "i", playerid);
- return true;
- }
- GREENSIDE::ProcessCrateSale(playerid)
- {
- new weight = cache_get_field_content_int(0, "weight"), value = (weight * 3), count = cache_get_field_content_int(0, "rows");
- SetPVarInt(playerid, "SellingFishWeight", weight);
- SetPVarInt(playerid, "SellingFishCount", count);
- format(sgstr, sizeof(sgstr), "Tem certeza que gostaria de vender esta caixa de pesca?\nExistem atualmente %i peixes na caixa que totaliza %ikg, avaliado em $%s.", count, weight, format_cash(value));
- Dialog_Show(playerid, FishCrateSell, DIALOG_STYLE_MSGBOX, "Tem certeza?", sgstr, "Sim", "Não");
- return true;
- }
- CMD:givemeafish(playerid)
- {
- if(!IsPlayerAdmin(playerid)) return true;
- if(FishWeight[playerid][0] != -1 && FishWeight[playerid][1] != -1 && FishWeight[playerid][2] != -1 && FishWeight[playerid][3] != -1 && FishWeight[playerid][4] != -1) return SysMsg(playerid,"You can't hold anymore fish.");
- OnPlayerFish(playerid, 2);
- return true;
- }
- stock GetFishingCrateModelID(crateid)
- {
- switch(crateid)
- {
- case 1: return 1271; //small
- case 2: return 3800; //medium
- case 3: return 3798; //large
- }
- return true;
- }
- stock GetFreeFishCrateSlot()
- {
- for(new c = 0; c < MAX_FISHCRATES; c++)
- {
- if(FishingCrates[c][CrateID] == -1)
- {
- return c;
- }
- }
- return true;
- }
- stock ClearFishingCrateData(crateid)
- {
- FishingCrates[crateid][CrateID] = 0;
- FishingCrates[crateid][FishingCrateObject] = INVALID_OBJECT_ID;
- FishingCrates[crateid][CrateOwner] = 0;
- FishingCrates[crateid][CrateType] = 0;
- FishingCrates[crateid][CrateVehicle] = 0;
- FishingCrates[crateid][CrateLocX] = 0.0;
- FishingCrates[crateid][CrateLocY] = 0.0;
- FishingCrates[crateid][CrateLocZ] = 0.0;
- return true;
- }
- //FINAL SISTEMA DE PESCA
- //==================== Fim ==================================//
- //Death system commands
- CMD:feridas(playerid, params[])
- {
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /feridas [player id ou MaskID]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsSpectating[playa] >= 0) return SysMsg(playerid,"Você deve estar perto do jogador para ver lesões.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ) && !IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid,"Você deve estar perto das feridas da exibição do jogador.");
- ShowInjuriesForPlayer(playerid, playa);
- return true;
- }
- CMD:helpup(playerid, params[])//ajudar levantar
- {
- if(!Logged{playerid}) return true;
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /ajudarlevantar [player id ou MaskID]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(!Dead{playa}) return SysMsg(playerid, "Este jogador não está ferido.");
- if(playa == playerid) return SysMsg(playerid, "Você pode não se ajudar.");
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, PlayerPosX(playa), PlayerPosY(playa), PlayerPosZ(playa))) return SysMsg(playerid, "Você deve estar perto desse jogador para ajudá-los.");
- new nlwcount = 0, lwcount = 0;
- for(new x = 0; x < HitCount[playa]; x++)
- {
- switch(Injuries[playa][x][pWeaponID])
- {
- case 22..34,38: lwcount ++;
- default: nlwcount ++;
- }
- }
- if(lwcount >= 1) return SysMsg(playerid, "Este jogador tem uma ferida letal. Ele(a) precisam de um tratamento médico adequado.");
- else
- {
- RevivePlayer(playa);
- SetPlayerHealthEx(playa, 50.0);
- SendClientMessageF(playa, COLOR_WHITE, "%s ajudou você se levantar.", NameRP(playerid));
- format(gstr, sizeof(gstr),"* %s ajuda %s a ficar de pé. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- //end of death system commands
- //cadaver system commands
- CMD:cadaver(playerid, params[])
- {
- new option[24], corpse;
- if(sscanf(params, "s[24]i", option, corpse)) return SysMsg(playerid, "Use: /cadaver [feridas/saco/queimar] [corpse ID]");
- if(corpse < 0 || corpse > MAX_CORPSES) return SysMsg(playerid, "Cadáver inválido.");
- if(!CorpseData[corpse][CorpseUsed]) return SysMsg(playerid, "Cadáver inválido.");
- if(strmatch(option, "feridas"))
- {
- new Float:tX,Float:tY,Float:tZ;
- GetActorPos(CorpseData[corpse][CorpseActor],tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ) && !IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid,"Você deve estar perto dos ferimentos da visão do cadáver.");
- ShowCorpseInjuriesToPlayer(playerid, corpse);
- return true;
- }
- else if(strmatch(option, "saco"))//colocar saco preto
- {
- if(Faction[playerid] == FACTION_SACFD || IsESU{playerid} || Faction[playerid] == FACTION_RESEARCH)
- {
- if(!HasBodyBag{playerid}) return SysMsg(playerid, "Você não tem um saco de corpo.");
- new Float:x, Float:y, Float:z;
- GetActorPos(CorpseData[corpse][CorpseActor], x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z)) return SysMsg(playerid, "Você deve estar perto do cadáver para colocar o saco preto.");
- if(IsValidActor(CorpseData[corpse][CorpseActor])) DestroyActor(CorpseData[corpse][CorpseActor]);
- if(CorpseData[corpse][CorpseLabel] != Text3D:INVALID_3DTEXT_ID) DestroyDynamic3DTextLabel(CorpseData[corpse][CorpseLabel]);
- CorpseData[corpse][CorpseBag] = CreateDynamicObject(19944, CorpseData[corpse][CorpsePosX], CorpseData[corpse][CorpsePosY], CorpseData[corpse][CorpsePosZ] - 1.0, 0.0, 0.0, CorpseData[corpse][CorpseRot], CorpseData[corpse][CorpseVW]);
- CorpseData[corpse][CorpseActor] = INVALID_ACTOR_ID;
- CorpseData[corpse][CorpseLabel] = Text3D:INVALID_3DTEXT_ID;
- HasBodyBag{playerid} = false;
- RemovePlayerAttachedObject(playerid, BodyBagIndex[playerid]);
- BodyBagIndex[playerid] = -1;
- ApplyAnimation(playerid, "BOMBER","BOM_Plant",4.0,0,0,0,0,0,1);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- SendClientMessage(playerid, COLOR_BLUE, "Você colocou o cadáver no saco preto.");
- format(sgstr, sizeof(sgstr), "* %s coloca o cadáver dentro do saco preto, logo o fechando. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else SysMsg(playerid, "Você deve estar no SACFD ou ESU para usar este comando.");
- }
- else if(strmatch(option, "queimar"))
- {
- if(Inventory[playerid][Lighter] == 0) return SysMsg(playerid, "Você deve ter um isqueiro para queimar um cadáver.");
- if(Inventory[playerid][FuelCan][0] < 25) return SysMsg(playerid, "Seu combustível tem que estar com 25% de cheio.");
- new Float:x, Float:y, Float:z;
- GetActorPos(CorpseData[corpse][CorpseActor], x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 5, x, y, z)) return SysMsg(playerid, "Você não está perto de um cadáver.");
- new fire = PlaceFire(x, y, z, 3, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), false);
- SetTimerEx("DestroyCorpse", 180000, 0, "i", corpse);
- SetTimerEx("RemoveFire", 200000, 0, "i", fire);
- Inventory[playerid][Lighter] -= 1;
- Inventory[playerid][FuelCan][0] -= 25;
- format(sgstr, sizeof(sgstr), "* %s pega um galão de gasolina e joga um pouco de gasolina sobre o cadáver, logo depois acendendo um fogo e queimando o mesmo. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasLighter = %i, HasFuelCan = %i WHERE id = %i", Inventory[playerid][Lighter], Inventory[playerid][FuelCan][0], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- foreach(new i: Player)
- {
- if(IsPlayerInRangeOfPoint(i, 10, x, y, z))
- {
- Streamer_Update(i);
- }
- }
- return true;
- }
- else return cmd_cadaver(playerid, "");
- return true;
- }
- CMD:sacopreto(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_SACFD || IsESU{playerid} || Faction[playerid] == FACTION_RESEARCH)
- {
- new option[24];
- if(sscanf(params, "s[24]", option)) return SysMsg(playerid, "Use: /sacopreto [pegarc/remove/pegar]");
- if(strmatch(option, "pegarc"))
- {
- if(HasBodyBag{playerid}) return SysMsg(playerid, "Você já pegou um saco preto.");
- new v = GetNearestVehicle(playerid), faction = IsFactionVehicle(v);
- if(faction > 0 && faction != Faction[playerid]) return SysMsg(playerid, "Você deve estar perto do porta-malas de um veículo de facção para usar este comando.");
- if(!TrunkXY(playerid, v)) return SysMsg(playerid, "Você deve estar perto do tronco de um veículo de facção para usar esse comando.");
- new index = GetFreePlayerObjectIndex(playerid);
- if(index == -1) return SysMsg(playerid, "Você já está carregando uma bolsa de corpo ou você não tem nenhum slot livre de objetos anexados.");
- else SetPlayerAttachedObject(playerid, index, 19944, 1, -0.060999, 0.525000, 0.000000, -86.099998, 84.099975, -3.100000, 0.685999, 0.652000, 0.780999);
- BodyBagIndex[playerid] = index;
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
- HasBodyBag{playerid} = true;
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- SendClientMessage(playerid, COLOR_BLUE, "Você recebeu um saco de corpo da parte de trás do veículo.");
- format(sgstr, sizeof(sgstr), "* %s pega um cadáver dentro de um saco preto da parte de trás da %s. *", NameRP(playerid), GetVehicleName(v));
- ProxDetector(20.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else if(strmatch(option, "remove"))
- {
- if(!HasBodyBag{playerid}) return SysMsg(playerid, "Você não tem um saco de corpo em você.");
- new v = GetNearestVehicle(playerid), faction = IsFactionVehicle(v);
- if(faction > 0 && faction != Faction[playerid]) return SysMsg(playerid, "Você deve estar perto do porta-malas de um veículo de facção para usar este comando.");
- if(!TrunkXY(playerid, v)) return SysMsg(playerid, "Você deve estar perto do porta-malas de um veículo de facção para usar este comando.");
- RemovePlayerAttachedObject(playerid, BodyBagIndex[playerid]);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- BodyBagIndex[playerid] = 0;
- HasBodyBag{playerid} = false;
- OnePlayAnim(playerid, "CARRY", "putdwn", 4,0,0,0,0,0);
- SendClientMessage(playerid, COLOR_BLUE, "Você colocou o saco do corpo de volta no veículo.");
- format(sgstr, sizeof(sgstr), "* %s coloca um saco de corpo na parte de trás da sua %s. *", NameRP(playerid), GetVehicleName(v));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else if(strmatch(option, "pegar"))
- {
- if(HasBodyBag{playerid}) return SysMsg(playerid, "Você já tem um saco de corpo em você.");
- new Float:x, Float:y, Float:z;
- for(new c = 0; c < MAX_CORPSES; c++)
- {
- GetDynamicObjectPos(CorpseData[c][CorpseBag], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z))
- {
- DestroyCorpse(c);
- new index = GetFreePlayerObjectIndex(playerid);
- if(index == -1) return SysMsg(playerid, "Você já está carregando uma bolsa de corpo ou você não tem nenhum slot livre de objetos anexados.");
- else SetPlayerAttachedObject(playerid, index, 19944, 1, -0.060999, 0.525000, 0.000000, -86.099998, 84.099975, -3.100000, 0.685999, 0.652000, 0.780999);
- BodyBagIndex[playerid] = index;
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
- HasBodyBag{playerid} = true;
- format(sgstr, sizeof(sgstr), "* %s o pega um cadáver que estaria dentro do saco preto no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- return true;
- }
- }
- SysMsg(playerid, "Você não está perto de nenhum saco de corpo.");
- }
- else return cmd_sacopreto(playerid, "");
- }
- else SysMsg(playerid, "Você deve estar no SACFD ou um membro da ESU para usar este comando.");
- return true;
- }
- //end of corpse system commands
- //Job commands
- CMD:jobs(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- SendClientMessage(playerid,COLOR_ORANGE,"Estatísticas de trabalho:");
- if(Job[playerid] > 0)
- {
- new JobName[70];
- switch(Job[playerid])
- {
- case JOB_MECHANIC: JobName = "Mecanico";
- case JOB_MAINTENANCE: JobName = "Trabalhador da manutenção";
- case JOB_DRUGDEALER: JobName = "Traficante de drogas";
- case JOB_TAXI: JobName = "Taxista";
- }
- SendClientMessageF(playerid,COLOR_YELLOW,"Você está trabalhando atualmente como: %s (Temporizador de spam do trabalho: %i Minutos)", JobName, JobSpamTime[playerid]);
- }
- SendClientMessageF(playerid,COLOR_YELLOW,"VARREDOR DE RUA: Tempo completado: %i, Level: %i (%i trabalhos até o nível), Temporizador de Spam: %i minutos", SweepStat[playerid], SweepLevel[playerid], GetAmountTillJobLevelup(2, SweepLevel[playerid], SweepStat[playerid]), SweepSpamTime[playerid]);
- SendClientMessageF(playerid,COLOR_YELLOW,"TRUCKER: Tempo completado: %i, Level: %i (%i trabalhos até o nível), Temporizador de Spam: %i minutos", TruckStat[playerid], TruckLevel[playerid], GetAmountTillJobLevelup(1, TruckLevel[playerid], TruckStat[playerid]), TruckSpamTime[playerid]);
- SendClientMessageF(playerid,COLOR_YELLOW,"ENTREGADOR DE PIZZA: Tempo completado: %i, Level: %i (%i trabalhos até o nível), Temporizador de Spam: %i minutos", DeliverStat[playerid], DeliverLevel[playerid], GetAmountTillJobLevelup(3, DeliverLevel[playerid], DeliverStat[playerid]), DeliverSpamTime[playerid]);
- SendClientMessageF(playerid,COLOR_YELLOW,"COALMINER: Tempo completado: %i, Level: %i (%i trabalhos até o nível), Temporizador de Spam: %i minutos", CoalmineStat[playerid], CoalmineLevel[playerid], GetAmountTillJobLevelup(4, CoalmineLevel[playerid], CoalmineStat[playerid]), CoalmineSpamTime[playerid]);
- SendClientMessageF(playerid,COLOR_YELLOW,"LIXEIRO: Tempo completado: %i, Level: %i (%i trabalhos até o nível), Temporizador de Spam: %i minutos", TrashStat[playerid], TrashLevel[playerid], GetAmountTillJobLevelup(5, TrashLevel[playerid], TrashStat[playerid]), TrashSpamTime[playerid]);
- return true;
- }
- CMD:jobinfo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsPlayerInRangeOfPoint(playerid, 2.5, 883.109497, 2261.683105, 238.237808) || IsPlayerInRangeOfPoint(playerid, 2.5, 922.06030, 2380.831787, 246.462112) || IsPlayerInRangeOfPoint(playerid, 2.5, 758.2207,-29.9649,1008.6959) || IsPlayerInRangeOfPoint(playerid, 2.5, 1184.8542,1349.2084,999.1968) || IsPlayerInRangeOfPoint(playerid, 2.5, 1229.5603,186.1047,2091.3569))
- {
- gstr[0] = EOS;
- strcat(gstr, "TRABALHOS\n");
- strcat(gstr, "Mecanico\n");
- strcat(gstr, "Trabalhar como um mecânico significa que você pode reparar, modificar e pintar veiculos.\n");
- strcat(gstr, "Localização: Dillimore Pay N Spray\n");
- strcat(gstr, "Pagamento: $300 BASE por Payday\n\n");
- strcat(gstr, "Trabalhador da manutenção\n");
- strcat(gstr, "Trabalhar como trabalhador de manutenção significa que você limpa as ruas, pegando lixo.\n");
- strcat(gstr, "No prédio principal, você pode entrar em serviço e esvaziar sua bolsa para confirmar seu pagamento.\n");
- strcat(gstr, "Seu salário depende da quantidade de lixo que você coleciona e é dada no seu dia de pagamento.\n");
- strcat(gstr, "Localização: Palomino Creek Sweeper Building\n");
- strcat(gstr, "Pagamento: $50 BASE por dia de pagamento +$10 por cada lixo escolhido +$50 por cada 10 camadas escolhidas ao mesmo tempo.\n\n");
- strcat(gstr, "Trabalhos paralelos\n");
- strcat(gstr, "Este tipo de trabalho é um trabalho único, embora possa ser repetido, para ganhar dinheiro rápido.\n");
- strcat(gstr, "Motorista de ônibus - Blueberry\n");
- strcat(gstr, "Mineiro de carvão - Hunter Quarry\n");
- strcat(gstr, "Entrega de pizza - Montgomery\n");
- strcat(gstr, "Varredor de rua - Palomino Creek\n");
- strcat(gstr, "Coletor de lixo - Bone County\n");
- strcat(gstr, "Trucking - Blueberry\n");
- ShowMessage(playerid, "Informação de emprego", gstr, "Pronto");
- }
- return true;
- }
- CMD:pegartrabalho(playerid, params[])//pegartrabalho//
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(PlayerLevel[playerid] < 2) return SysMsg(playerid,"Você precisa ser nível 2 para pegar trabalhos oficiais.");
- if(Job[playerid] > 0) return SysMsg(playerid,"Você já tem um emprego, use /deixartrabalho primeiro.");
- if(JobSpamTime[playerid] > 0) return SysMsgF(playerid, "Você precisa esperar %i minutos para se candidatar a um novo emprego.", JobSpamTime[playerid]);
- if(IsPlayerInRangeOfPoint(playerid, 3.5, 723.706787, -464.991302, 16.335937)) //Mechanic Job
- {
- Job[playerid] = JOB_MECHANIC;
- MySQLUpdateInt(SQLID[playerid], "Job", Job[playerid], "players");
- if(IsDonator[playerid] >= 2) JobSpamTime[playerid] = 0;
- else JobSpamTime[playerid] = 30;
- SendClientMessage(playerid, COLOR_WHITE, "Seu novo trabalho é um mecânico. Para ver o que você pode fazer, use '/ajuda trabalho'.");
- MySQLUpdateInt(SQLID[playerid], "JobSpamTime", JobSpamTime[playerid], "players");
- }
- if(IsPlayerInRangeOfPoint(playerid, 3.5, 2244.1768, 32.2951, 26.5016)) //Maintenance Worker Job
- {
- Job[playerid] = JOB_MAINTENANCE;
- MySQLUpdateInt(SQLID[playerid], "Job", Job[playerid], "players");
- if(IsDonator[playerid] >= 2) JobSpamTime[playerid] = 0;
- else JobSpamTime[playerid] = 30;
- SendClientMessage(playerid, COLOR_WHITE, "Seu novo trabalho é um trabalhador de manutenção. Para ver o que você pode fazer, use '/ajuda trabalho'.");
- MySQLUpdateInt(SQLID[playerid], "JobSpamTime", JobSpamTime[playerid], "players");
- }
- if(IsPlayerInRangeOfPoint(playerid, 3.5, 196.133499, -232.079284, 1.778618)) //Drug Dealer Job
- {
- Job[playerid] = JOB_DRUGDEALER;
- MySQLUpdateInt(SQLID[playerid], "Job", Job[playerid], "players");
- if(IsDonator[playerid] >= 2) JobSpamTime[playerid] = 0;
- else JobSpamTime[playerid] = 30;
- SendClientMessage(playerid, COLOR_WHITE, "Seu novo emprego é um traficante. Para ver o que você pode fazer, use '/ajuda trabalho'.");
- MySQLUpdateInt(SQLID[playerid], "JobSpamTime", JobSpamTime[playerid], "players");
- }
- if(IsPlayerInRangeOfPoint(playerid, 3.5, 1235.2996, 173.2005, 2091.3513) && GetPlayerVirtualWorld(playerid) == 40073) //Taxi Job
- {
- new count = 0;
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(VehicleData[v][VehicleOwnerSQLID] == SQLID[playerid] && IsSuitableTaxiCar(v))
- {
- count++;
- break;
- }
- }
- if(count != 0)
- {
- Job[playerid] = JOB_TAXI;
- MySQLUpdateInt(SQLID[playerid], "Job", Job[playerid], "players");
- if(IsDonator[playerid] >= 2) JobSpamTime[playerid] = 0;
- else JobSpamTime[playerid] = 30;
- SendClientMessage(playerid, COLOR_WHITE, "Seu novo emprego é um taxista. Para ver o que você pode fazer, use '/ajuda trabalho'.");
- MySQLUpdateInt(SQLID[playerid], "JobSpamTime", JobSpamTime[playerid], "players");
- }
- else return SysMsg(playerid, "Você deve ter um dos seguintes veículos para obter esse trabalho: Taxi, Cabbie, Moonbeam, Admiral ou Premier.");
- }
- return true;
- }
- CMD:deixartrabalho(playerid, params[])//deixartrabalho //
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Job[playerid] == 0) return SysMsg(playerid,"Você não tem nenhum trabalho para sair.");
- if(JobSpamTime[playerid] > 0) return SysMsgF(playerid, "Spam do trabalho: Você ainda tem %i minutos antes de sair.", JobSpamTime[playerid]);
- new oldJobName[40];
- switch(Job[playerid])
- {
- case JOB_MECHANIC: oldJobName = "um Mecanico";
- case JOB_MAINTENANCE: oldJobName = "um Funcionário de manutenção";
- case JOB_DRUGDEALER: oldJobName = "um Traficante de drogas";
- case JOB_TAXI: oldJobName = "um Táxista";
- }
- Job[playerid] = 0;
- if(IsDonator[playerid] >= 2) JobSpamTime[playerid] = 0;
- else JobSpamTime[playerid] = 30;
- JobDuty[playerid] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET Job = 0, JobSpamTime = %i WHERE id = %i", JobSpamTime[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_WHITE, "Você saiu do trabalho, agora não é mais %s.", oldJobName);
- return true;
- }
- CMD:trabalho(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- new status[10], skin;
- if(sscanf(params, "s[4]i", status, skin)) return SysMsg(playerid,"Use: /trabalho ['on' ou 'off'] [Roupa de trabalho 1/2/3/4]");
- if(Job[playerid] == JOB_MAINTENANCE)
- {
- if(!IsPlayerInRangeOfPoint(playerid, 3.0, 2237.668945, 23.48138, 26.45635)) return SysMsg(playerid, "Você deve estar no prédio de manutenção para executar esta ação.");
- if(strcmp("on",status,true) == 0)
- {
- if(JobDuty[playerid] == 1) return SysMsg(playerid, "Você já está em serviço.");
- if(skin == 0) return SysMsg(playerid,"Use: /trabalho On [Roupas: 1, 2, 3 ou 4]");
- if(skin < 1 || skin > 4) return SysMsg(playerid,"Para você trabalhar, deve estar vestido com a roupa 1, 2, 3 ou 4.");
- switch(skin)
- {
- case 1: SetPlayerSkinEx(playerid, 27);
- case 2: SetPlayerSkinEx(playerid, 16);
- case 3: SetPlayerSkinEx(playerid, 50);
- case 4: SetPlayerSkinEx(playerid, 8);
- }
- JobDuty[playerid] = 1;
- SendClientMessage(playerid, COLOR_BLUE, "Agora você está trabalhando com manutenções. Use /picklitter e para parar de trabalhar use (/duty off).");
- return true;
- }
- else if(strcmp("off",status,true) == 0)
- {
- if(JobDuty[playerid] == 0) return SysMsg(playerid, "Você já está fora de serviço.");
- SetPlayerSkinEx(playerid, cPlayersSkin[playerid]);
- JobDuty[playerid] = 0;
- SendClientMessage(playerid, COLOR_BLUE, "Agora você está fora de serviço.");
- return true;
- }
- }
- if(Job[playerid] == JOB_TAXI)
- {
- if(strcmp("on",status,true) == 0)
- {
- if(JobDuty[playerid] == 1) return SysMsg(playerid, "Você já está em serviço.");
- new vehicleid = GetPlayerVehicleID(playerid);
- if(!IsSuitableTaxiCar(vehicleid)) return SysMsg(playerid, "Você deve estar em um veículo de táxi adequado para entrar em serviço. (Taxi, Cabbie, Premier, Moonbeam ou Admiral)");
- switch(GetVehicleModel(vehicleid))
- {
- case 445: vTaxiSign[vehicleid] = CreateVehicleObject(19308, vehicleid, 0.0, 0.0, 0.915, 0.0, 0.0, 90.0);
- case 426: vTaxiSign[vehicleid] = CreateVehicleObject(19308, vehicleid, 0.0, 0.0, 0.9325, 0.0, 0.0, 90.0);
- case 418: vTaxiSign[vehicleid] = CreateVehicleObject(19308, vehicleid, 0.0, 0.0, 1.12, 0.0, 0.0, 90.0);
- }
- MyTaxiCar[playerid] = vehicleid;
- JobDuty[playerid] = 1;
- format(gstr, sizeof(gstr),"[Cabbie Co] %s esta em serviço, ligue para 444, se você precisa de táxi.", NameEx(playerid));
- SendClientMessageToAllLogged(COLOR_YELLOW,gstr);
- SendClientMessage(playerid, COLOR_WHITE, "Agora você então em serviço de {FBFF00}Taxista.");
- return true;
- }
- else if(strcmp("off",status,true) == 0)
- {
- if(JobDuty[playerid] == 0) return SysMsg(playerid, "Você não está trabalhando.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você deve estar em um veículo para usar este comando.");
- if(!IsSuitableTaxiCar(GetPlayerVehicleID(playerid))) return SysMsg(playerid, "Você deve estar em um veículo de táxi adequado.");
- new v = GetPlayerVehicleID(playerid);
- if(vTaxiSign[v] != INVALID_OBJECT_ID) DestroyDynamicObjectEx(vTaxiSign[v], "vTaxiSign[v]");
- vTaxiSign[v] = INVALID_OBJECT_ID;
- MyTaxiCar[playerid] = 0;
- JobDuty[playerid] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Agora você está ofera de serviço de {FBFF00}Taxista.");
- return true;
- }
- }
- return true;
- }
- //taxi commands
- CMD:oferecertarifa(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Job[playerid] == JOB_TAXI)
- {
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /oferecertarifa [player id ou nome]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- new vehicleid = GetPlayerVehicleID(playerid);
- if(!IsSuitableTaxiCar(vehicleid)) return SysMsg(playerid,"Você deve estar em um veículo apropriado para usar isso.");
- if(TaxiFareID[playerid] > -1) return SysMsg(playerid,"Você já tem uma tarifa.");
- if(GetPlayerVehicleID(playa) != vehicleid) return SysMsg(playerid,"Essa pessoa precisa estar no mesmo táxi que você.");
- if(TaxiMeter[playerid] == 1) return SysMsg(playerid,"O taxímetro deve estar desligado.");
- TaxiForceFare[playerid] = playa;
- format(gstr, sizeof(gstr),"O taxísta %s está esperando você confirmar o pedido de táxi. Use '/aceitar taxi' para confirmar, ou saia do veiculo. (O valor da viagem será de $%i)", NameEx(playerid), MyFareCharge[playerid]);
- SendClientMessage(playa,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Você ofereceu a %s uma corrida de táxi, ele(a) precisa aceitar primeiro.", NameEx(playa));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else return SysMsg(playerid,"Você deve ser um motorista de táxi para usar isso.");
- return true;
- }
- CMD:taximetro(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(TaxiForceFare[playerid] > -1) return SysMsg(playerid,"You cant change the fare while you have a pending customer.");
- if(Job[playerid] == JOB_TAXI)
- {
- new newfare = -1;
- if(sscanf(params, "i", newfare)) return SysMsg(playerid,"Use: /taximetro [Valor 0-25]");
- if(newfare < 0 || newfare > 25) return SysMsg(playerid,"O valor deve ser entre 0 e 25.");
- if(newfare > MyFareCharge[playerid] && TaxiFareID[playerid] > -1) return SysMsg(playerid,"Você não pode aumentar a tarifa quando você tem um passageiro, sinta-se livre para diminuí-lo se quiser.");
- if(MyFareCharge[playerid] == newfare) return SysMsg(playerid,"Sua tarifa já está definida.");
- new oldfare = MyFareCharge[playerid];
- MyFareCharge[playerid] = newfare;
- MySQLUpdateInt(SQLID[playerid], "FareRate", MyFareCharge[playerid], "players");
- if(TaxiFareID[playerid] > -1)
- {
- format(gstr, sizeof(gstr),"O seu taxista alterou a tarifa para {4BB74C}$%i{FFFFFF}. (Anteriormente era $%i)", MyFareCharge[playerid], oldfare);
- SendClientMessage(TaxiFareID[playerid],COLOR_WHITE,gstr);
- }
- format(gstr, sizeof(gstr),"Sua nova tarifa será incrementada por {4BB74C}$%i{FFFFFF} a partir de agora. (Anteriormente era $%i)", MyFareCharge[playerid], oldfare);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else return SysMsg(playerid,"Você deve ser um motorista de táxi para usar isso.");
- return true;
- }
- CMD:meutaximetro(playerid, params[])//meutaximetro
- {
- if(!Logged{playerid}) return true;
- if(Job[playerid] == JOB_TAXI)
- {
- format(gstr, sizeof(gstr),"A tarifa do taxímetro é {4BB74C}$%i", MyFareCharge[playerid]);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else return SysMsg(playerid,"Você deve ser um motorista de táxi para usar isso.");
- return true;
- }
- CMD:cancelartaximetro(playerid, params[])//cancelartaximetro
- {
- if(!Logged{playerid}) return true;
- if(Job[playerid] == JOB_TAXI)
- {
- if(TaxiFareID[playerid] == -1) return SysMsg(playerid,"Você não tem uma tarifa para cancelar.");
- new playa = TaxiFareID[playerid];
- TaxiFare[playa] = 0;
- TaxiFareID[playerid] = -1;
- TaxiMeter[playerid] = 0;
- SendClientMessage(playa, COLOR_WHITE, "O motorista cancelou sua tarifa..");
- }
- else return SysMsg(playerid,"Você deve ser um taxista para usar este comando.");
- return true;
- }
- CMD:cancelartaxi(playerid, params[])//canceltaxi
- {
- if(!Logged{playerid}) return true;
- if(PlayerCalledTaxi[playerid] == 0) return SysMsg(playerid,"Você não chamou nenhum Táxi.");
- new rnd = random(5);
- foreach(new Taxi: Player)
- {
- if(Job[Taxi] == JOB_TAXI && JobDuty[Taxi] == 1)
- {
- SetPlayerMarkerForPlayer(Taxi, playerid, 0xFFFFFF00);
- switch(rnd)
- {
- case 0: SendClientMessage(Taxi, COLOR_YELLOW, "Central Dispatcher: {FFFFFF}\"Esqueça 'sobre esse chamado, eles não querem mais um táxi'.\" ((uma chamada foi cancelada, marcador removido))");
- case 1: SendClientMessage(Taxi, COLOR_YELLOW, "Central Dispatcher: {FFFFFF}\"Vocês estão perdendo meus clientes! Pare de ler jornais e vá trabalhar!\" ((uma chamada foi cancelada, marcador removido))");
- case 2: SendClientMessage(Taxi, COLOR_YELLOW, "Central Dispatcher: {FFFFFF}\"Meu Deusm você mesmo me escuta! Quando uma chamada vem você deve ir buscalos, não ignorar!\" ((uma chamada foi cancelada, marcador removido))");
- case 3: SendClientMessage(Taxi, COLOR_YELLOW, "Central Dispatcher: {FFFFFF}\"Lá vai outro cliente pagante! Eu seria melhor fazendo isto eu mesmo.\" ((uma chamada foi cancelada, marcador removido))");
- case 4: SendClientMessage(Taxi, COLOR_YELLOW, "Central Dispatcher: {FFFFFF}\"Ignore esse trabalho, eles ligaram e cancelaram.\" ((uma chamada foi cancelada, marcador removido))");
- }
- }
- }
- PlayerCalledTaxi[playerid] = 0;
- TaxiFare[playerid] = 0;
- SendClientMessage(playerid,COLOR_YELLOW,"[Táxi cancelado] Não se esqueça que nosso número é 444 se você precisar de nós novamente!");
- return true;
- }
- CMD:meteron(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Job[playerid] == JOB_TAXI)
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- if(!IsSuitableTaxiCar(vehicleid)) return SysMsg(playerid,"Você deve estar em um veículo apropriado para usar isso.");
- if(TaxiFareID[playerid] == -1) return SysMsg(playerid,"Seu veiculo não tem taxímetro.");
- if(GetPlayerVehicleID(TaxiFareID[playerid]) != vehicleid) return SysMsg(playerid,"Sua taximetro não está no seu veículo.");
- if(TaxiMeter[playerid] == 1) return SysMsg(playerid,"O taxímetro já está ligado.");
- TaxiMeter[playerid] = 1;
- SendClientMessage(playerid, COLOR_WHITE, "Meter is now on.");
- format(gstr, sizeof(gstr),"* %s liga o táximetro do veiculo %s. *", NameEx(playerid), GetVehicleName(vehicleid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else return SysMsg(playerid,"Você deve ser um motorista de táxi para usar isso.");
- return true;
- }
- CMD:meteroff(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Job[playerid] == JOB_TAXI)
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- if(!IsSuitableTaxiCar(vehicleid)) return SysMsg(playerid,"Você deve estar em um veículo apropriado para usar isso.");
- if(TaxiMeter[playerid] == 0) return SysMsg(playerid,"O taxímetro do veiculo já está desligado.");
- TaxiMeter[playerid] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Taxímetro desligado.");
- format(gstr, sizeof(gstr),"* %s desliga o taxímetro do veiculo %s. *", NameEx(playerid), GetVehicleName(vehicleid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else return SysMsg(playerid, "Você deve ser um motorista de táxi para usar isso.");
- return true;
- }
- CMD:atualizarmapa(playerid, params[])//atualizarmapa
- {
- if(!Logged{playerid}) return true;
- if(Job[playerid] == JOB_TAXI)
- {
- new count = 0;
- foreach(new i: Player)
- {
- if(PlayerCalledTaxi[i] == 1 && Logged{i})
- {
- count ++;
- SetPlayerMarkerForPlayer(i, playerid, COLOR_YELLOW);
- }
- }
- if(count == 0) return SendClientMessage(playerid, COLOR_WHITE, "Nenhum novo cliente foi adicionado ao seu mini-mapa.");
- SendClientMessage(playerid, COLOR_WHITE, "Seu mini-mapa foi atualizado com todos os novos clientes à espera de um táxi.");
- }
- else return SysMsg(playerid,"Você deve ser um motorista de táxi para usar isso.");
- return true;
- }
- CMD:limparchamado(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Job[playerid] != JOB_TAXI) return SysMsg(playerid,"Você deve estar no RTCR para usar esse recurso.");
- new playa;
- if(sscanf(params, "u", playa)) return SysMsg(playerid, "Use: /limparchamado [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(PlayerCalledTaxi[playa] == 0) return SysMsg(playerid,"Nenhum marcador para remover.");
- foreach(new i: Player)
- {
- if(Logged{i} && Job[i] == JOB_TAXI)
- {
- SendClientMessageF(i, COLOR_YELLOW, "(( [TAXI]: %s cancelou o pedido de taxi de %s (( Marcador foi removido ))", NameEx(playerid), NameEx(playa));
- SetPlayerMarkerForPlayer(i, playa, 0xFFFFFF00);
- }
- }
- return true;
- }
- //mechanic commands//mecanicochamadas
- CMD:mecanicochamadas(playerid, params[])
- {
- if(Job[playerid] != JOB_MECHANIC) return SysMsg(playerid, "Você precisa ser um mecanico para usar este comando.");
- new calls = 0;
- foreach(new i: Player)
- {
- if(HasActiveMechanicCall{i} && i != playerid)
- {
- sgstr[0] = EOS;
- strunpack(sgstr, MechanicCall[i]);
- SendSplitMessageF(playerid, COLOR_WHITE, "[Pedido de Mecânico]: Número de telefone: %i | Detalhes: %s", PhoneData[i][pNumber], sgstr);
- calls ++;
- }
- }
- if(calls == 0) return SysMsg(playerid, "Atualmente não existe chamada ativa.");
- return true;
- }
- CMD:limparchamadamecanica(playerid, params[])
- {
- if(Job[playerid] != JOB_MECHANIC) return SysMsg(playerid, "Você precisa ser um mecanico para usar este comando.");
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid, "Use: /limparchamadamecanica [playerID ou nome]");
- if(!HasActiveMechanicCall{playa}) return SysMsg(playerid, "Essa pessoa não tem uma ligação para limpar.");
- HasActiveMechanicCall{playa} = false;
- strdel(MechanicCall[playa], 0, 128);
- SendClientMessage(playerid, COLOR_WHITE, "Você cancelou a chamada.");
- return true;
- }
- CMD:oferecerpintura(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- if(Job[playerid] == JOB_MECHANIC)
- {
- new myVehicle = GetPlayerVehicleID(playerid);
- if(myVehicle == 0) return SysMsg(playerid,"Você deve estar em um veículo para oferecer isso.");
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você não deve ser o motorista para oferecer isso.");
- new playa = -1, color1, color2, Price;
- if(sscanf(params, "uiii", playa, Price, color1, color2)) return SysMsg(playerid,"Use: /oferecerpintura [ID ou nome do jogador] [preço] [cor primária] [cor secundária]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode fazer isso em si mesmo.");
- new theirVehicle = GetPlayerVehicleID(playa);
- if(myVehicle != theirVehicle) return SysMsg(playerid,"Você deve estar no mesmo veículo que o cliente para oferecer isso.");
- if(GetPlayerState(playa) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"O cliente deve ser o motorista para oferecer isso.");
- if(AwaitingSpray[playa] == 1) return SysMsg(playerid,"Outro mecanico já fez essa oferta para um jogador.");
- if(Price < 0 || Price > 10000) return SysMsg(playerid,"Preço inválidp. [$0 - $10,000 somente]");
- if(color1 < 0 || color1 > 255) return SysMsg(playerid,"Cor inválida 1. [0 - 255 somente]");
- if(color2 < 0 || color2 > 255) return SysMsg(playerid,"Cor inválida 2. [0 - 255 somente]");
- AwaitingSpray[playa] = 1;
- GoingToSprayVehicleID[playerid] = myVehicle;
- MechanicSpray[myVehicle][0] = playerid;
- MechanicSpray[myVehicle][1] = playa;
- MechanicSpray[myVehicle][2] = color1;
- MechanicSpray[myVehicle][3] = color2;
- MechanicSpray[myVehicle][4] = Price;
- MechanicSpray[myVehicle][5] = myVehicle;
- SendClientMessageF(playa, COLOR_WHITE, "O mecanico %s ofereceu pintar seu veiculo %s. Ele irá pintar %s(%i) e %s(%i) por $%i.", NameEx(playerid), GetVehicleName(myVehicle), VehicleColors[color1], color1, VehicleColors[color2], color2, Price);
- SendClientMessage(playa, COLOR_WHITE, "Use '/aceitar spray' para confirmar.");
- SendClientMessageF(playerid, COLOR_WHITE, "Você ofereceu a %s uma pintura para o veiculo %s. Você pintará %s(%i) e %s(%i) por $%i. Espere o mesmo aceitar a proposta...", NameEx(playa), GetVehicleName(myVehicle), VehicleColors[color1], color1, VehicleColors[color2], color2, Price);
- }
- return true;
- }
- CMD:respray(playerid, params[]) return cmd_spray(playerid, params);
- CMD:colourcar(playerid, params[]) return cmd_spray(playerid, params);
- CMD:colorcar(playerid, params[]) return cmd_spray(playerid, params);
- CMD:spray(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- new v = GetPlayerVehicleID(playerid);
- if(Job[playerid] == JOB_MECHANIC || IsPlayerAdmin(playerid))
- {
- new bodyshop = -1;
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[1])) bodyshop = 2; //dillimore
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(IsPlayerInDynamicArea(playerid, GarageAreas[3])) bodyshop = 4; //el q
- if(IsPlayerInDynamicArea(playerid, GarageAreas[4])) bodyshop = 5; //airstrip
- if(IsPlayerInDynamicArea(playerid, GarageAreas[5])) bodyshop = 6; //bayside
- if(IsPlayerInDynamicArea(playerid, GarageAreas[6])) bodyshop = 7; //angel pine
- if(bodyshop == -1) return SysMsg(playerid,"Você precisa estar em uma garagem de oficina para fazer isso.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você precisa estar em um veiculo para repinta-lo.");
- new color1, color2;
- if(sscanf(params, "iI(-1)", color1, color2)) return SysMsg(playerid,"Use: /spray [Cor primária] [Optional: Cor secundária]");
- if(color1 < 0 || color1 > 255) return SysMsg(playerid,"A cor primária, deve ser entre 0 e 255");
- if(color2 == -1) color2 = color1;
- else if(color2 < 0 || color2 > 255) return SysMsg(playerid,"A cor secundária 2, deve ser entre 0 e 255.");
- if(FVehicleData[v][FVFaction] > 0)
- {
- if(FVehicleData[v][FVFaction] != Faction[playerid]) return SysMsg(playerid, "Você não pode pintar veiculo que não faz parte da sua facção");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE fveh SET Col1 = %i, Col2 = %i WHERE id = %i", color1, color2, FVehicleData[v][FVSQLID]);
- mysql_pquery(conn, mquery);
- FVehicleData[v][FVCol1] = color1;
- FVehicleData[v][FVCol2] = color2;
- ChangeVehicleColorEx(v, color1, color2);
- ShowInfoText(playerid,"~G~R~R~E~B~S~Y~P~P~R~W~A~G~Y",3000);
- SendClientMessageF(playerid, COLOR_WHITE, "Cor do veiculo de facção alterado: %s(%i) & %s(%i)", VehicleColors[color1], color1, VehicleColors[color2], color2);
- format(gstr, sizeof(gstr),"* %s começa a repintar o veiculo %s de %s e %s. *", NameRP(playerid), GetVehicleName(v), VehicleColors[color1], VehicleColors[color2]);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else if(VehicleData[v][VehicleOwnerSQLID] > 0)
- {
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Você não é dono deste veículo., por favor use /oferecerpintura para repintar o veículo para o proprietário.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET Color1 = %i, Color2 = %i WHERE id = %i", color1, color2, VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- VehicleData[v][vColor1] = color1;
- VehicleData[v][vColor2] = color2;
- ChangeVehicleColorEx(v, color1, color2);
- ShowInfoText(playerid,"~G~R~R~E~B~S~Y~P~P~R~W~A~G~Y",3000);
- SendClientMessageF(playerid, COLOR_WHITE, "Cor do veículo alterada para: %s(%i) & %s(%i)", VehicleColors[color1], color1, VehicleColors[color2], color2);
- format(gstr, sizeof(gstr),"* %s começa pintar o veiculo %s de %s e %s. *", NameRP(playerid), GetVehicleName(v), VehicleColors[color1], VehicleColors[color2]);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- SysMsg(playerid, "Você só pode repintar seus próprios veículos com /spray.");
- }
- else return SysMsg(playerid, "Você deve ser um mecânico para repintar um veículos.");
- return true;
- }
- CMD:nitro(playerid, params[])//nitro
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- if(Job[playerid] != JOB_MECHANIC) return SysMsg(playerid, "Você precisa ser mecanico para adicionar nitro em um veiculo.");
- new VehicleId = GetPlayerVehicleID(playerid);
- if(VehicleId == 0) return SysMsg(playerid,"Você precisa estar em um veiculo para adicionar nitros.");
- if(Cash[playerid] < 50) return SysMsg(playerid,"Você precisa de $50 para adicionar nitros.");
- if(Cash[playerid] - 50 <= 0) return SysMsg(playerid, "Você precisa de $50 para adicionar nitros.");
- if(IsPlayerInInvalidNosVehicle(VehicleId) != 0) return SysMsg(playerid,"Você não pode adicionar o nitros a este veículo.");
- if(GetVehicleComponentInSlot(VehicleId, CARMODTYPE_NITRO) != 0) return SysMsg(playerid, "Este veículo já tem nitro. Use /removemods em uma oficina de reparo para remover esta modificação.");
- AddVehicleComponent(VehicleId, 1010);
- PlayerPlaySound(playerid,SOUND_CAR_MOD,0,0,0);
- ShowInfoText(playerid,"~G~Nitro ~W~Adicionado~n~~r~-$50",3000);
- GivePlayerCash(playerid, -50);
- format(gstr, sizeof(gstr),"* %s adiciona uma garrafa de nitro no %s. *", NameRP(playerid), GetVehicleName(VehicleId));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(!aspawned{VehicleId})
- {
- if(VehicleData[VehicleId][IdVehicle] == VehicleId && VehicleData[VehicleId][VehicleOwnerSQLID] > 0)
- {
- VehicleData[VehicleId][VehicleMod][CARMODTYPE_NITRO] = 1010;
- MySQLUpdateInt(VehicleData[VehicleId][VehSQLID], "VehicleModNos", 1010, "vehicles");
- return true;
- }
- if(FVehicleData[VehicleId][FVFaction] > 0 && FVehicleData[VehicleId][FactionVehID] == VehicleId)
- {
- FVehicleData[VehicleId][FVMod][CARMODTYPE_NITRO] = 1010;
- MySQLUpdateInt(FVehicleData[VehicleId][FVSQLID], "FVModNos", 1010, "fveh");
- return true;
- }
- }
- return true;
- }
- CMD:hyd(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- if(Job[playerid] != JOB_MECHANIC) return SysMsg(playerid, "Você deve ser um mecânico para adicionar hidráulica aos veículos..");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você deve estar em um veículo para adicionar hidráulica..");
- new VehicleId = GetPlayerVehicleID(playerid);
- if(CanVehicleHaveHydraulics(VehicleId) == 0) return SysMsg(playerid,"Este veículo não pode ter hidráulica.");
- if(Cash[playerid] < 500) return SysMsg(playerid,"Você precisa de $500 para adicionar hidráulica.");
- if(GetVehicleComponentInSlot(VehicleId, CARMODTYPE_HYDRAULICS) != 0) return SysMsg(playerid, "Este veículo já tem hidráulica. Use /removemods em uma garagem de reparo para remover isso.");
- AddVehicleComponent(VehicleId, 1087);
- PlayerPlaySound(playerid,SOUND_CAR_MOD,0,0,0);
- ShowInfoText(playerid,"~R~hidraulica~W~ adicionada~n~~r~-$500",3000);
- GivePlayerCash(playerid, -500);
- format(gstr, sizeof(gstr),"* %s adiciona hidráulica ao %s. *", NameRP(playerid), GetVehicleName(VehicleId));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(!aspawned{VehicleId})
- {
- new slot = GetVehicleComponentType(1087);
- if(VehicleData[VehicleId][IdVehicle] == VehicleId && VehicleData[VehicleId][VehicleOwnerSQLID] > 0)
- {
- VehicleData[VehicleId][VehicleMod][slot] = 1087;
- MySQLUpdateInt(VehicleData[VehicleId][VehSQLID], "Mod10", VehicleData[VehicleId][VehicleMod][slot], "vehicles");
- return true;
- }
- if(FVehicleData[VehicleId][FVFaction] > 0 && FVehicleData[VehicleId][FactionVehID] == VehicleId)
- {
- FVehicleData[VehicleId][FVMod][slot] = 1087;
- MySQLUpdateInt(FVehicleData[VehicleId][FVSQLID], "FVModHyd", FVehicleData[VehicleId][FVMod][slot], "fveh");
- return true;
- }
- }
- return true;
- }
- CMD:trocaroleo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(Inventory[playerid][EngineOil] == 0) return SysMsg(playerid,"Você não tem nenhum óleo.");
- if(Job[playerid] != JOB_MECHANIC) return SysMsg(playerid,"Somente mecanicos podem trocar óleo do motor do veiculo.");
- if(VehID > 0)
- {
- if(!VehicleHasEngine(VehID)) return SysMsg(playerid,"Este veículo não tem um motor, portanto, não precisa de uma mudança de óleo.");
- if(GetVehicleSpeed(VehID, 0) > 0) return SysMsg(playerid,"Por favor, reduza sua velocidade para 0.");
- if(VehicleBoots[VehID][0] == 0) return SysMsg(playerid,"Você precisa abrir o /capo do veiculo.");
- if(EngineStatus[VehID] == 1) return SysMsg(playerid,"O motor deve estar desligado para mudar o óleo.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(InCarCharging[playerid] > 0) return SysMsg(playerid,"Por favor, aguarde até que o seu celular esteja carregado completo completamente.");
- new Float:bonnety, Float:vx, Float:vy, Float:vz, Float:va;
- GetVehicleEnginePos(GetVehicleModel(VehID), bonnety);
- if(bonnety == 0 || IsBike(VehID) || IsHelicopter(VehID) || IsPlane(VehID) || IsBoat(VehID))
- {
- Inventory[playerid][EngineOil] = 0;
- MySQLUpdateInt(SQLID[playerid], "HasEngineOil", Inventory[playerid][EngineOil], "players");
- VehicleData[VehID][LastOilMileage] = VehicleData[VehID][Mileage];
- MySQLUpdateFloat(VehicleData[VehID][VehSQLID], "LastOilMileage", VehicleData[VehID][LastOilMileage], "vehicles");
- ToggleVehicleBonnet(VehID, 0);
- VehicleBoots[VehID][0] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "(( OOC a mudança de óleo> Este veículo não suporta mudanças de óleo interactivas. O óleo foi substituído. ))");
- }
- else
- {
- RemovePlayerFromVehicle(playerid);
- SetPlayerAttachedObject(playerid, HOLD_OBJECT_MISC, 2062, 6, 0.05, 0.05, 0.0, 0.0, 0.0, 0.0, 0.15, 0.15, 0.15);
- GetVehiclePos(VehID, vx, vy, vz);
- GetVehicleZAngle(VehID, va);
- new Float:dist = DistanceBetweenPoints(vx, vy, vz, vx, bonnety+vy, vz);
- vx += (dist * floatsin(-va, degrees));
- vy += (dist * floatcos(-va, degrees));
- ChangeOilPos[playerid][0] = vx;
- ChangeOilPos[playerid][1] = vy;
- ChangeOilPos[playerid][2] = vz;
- ChangeOilVehID[playerid] = VehID;
- SetPlayerCheckpointEx(playerid, vx, vy, vz, 1.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Continue perto do {FF0000}motor{FFFFFF} e use /trocaroleo para trocar o óleo do veiculo.");
- }
- }
- else
- {
- if(ChangeOilPos[playerid][0] == 0) return SysMsg(playerid,"Você não está mudando nenhum óleo.");
- if(ChangeOilVehID[playerid] == 0) return SysMsg(playerid,"Você não está mudando de óleo.");
- if(!IsPlayerInRangeOfPoint(playerid, 1.5, ChangeOilPos[playerid][0], ChangeOilPos[playerid][1], ChangeOilPos[playerid][2])) return SysMsg(playerid,"Você deve estar perto do motor para mudar o óleo.");
- TogglePlayerControllable(playerid, 0);
- SetPlayerToFacePoint(playerid, ChangeOilPos[playerid][0], ChangeOilPos[playerid][1]);
- OnePlayAnim(playerid, "BD_FIRE", "wash_up", 4.0, 1, 0, 0, 0, 0);
- SetTimerEx("FinishOilChange", 10000, 0, "dd", playerid, ChangeOilVehID[playerid]);
- format(gstr, sizeof(gstr),"* %s começa a mudar o olho do veiculo %s. *",NameRP(playerid),GetVehicleName(ChangeOilVehID[playerid]));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- Inventory[playerid][EngineOil] = 0;
- MySQLUpdateInt(SQLID[playerid], "HasEngineOil", Inventory[playerid][EngineOil], "players");
- }
- return true;
- }
- //maintenance worker commands //revisar trabalho
- CMD:picklitter(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- if(Job[playerid] != JOB_MAINTENANCE) return SysMsg(playerid,"Somente os Trabalhadores de Manutenção podem realizar esta ação.");
- if(JobDuty[playerid] == 0) return SysMsg(playerid,"Você deve estar no dever do trabalho para executar esta ação.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso em um veículo.");
- for(new i = 0; i < MAX_LITTER; i++)
- {
- if(LitterPlaced[i] > 0)
- {
- new Float:litterpos[3];
- GetDynamicObjectPos(LitterPlaced[i], litterpos[0], litterpos[1], litterpos[2]);
- if(IsPlayerInRangeOfPoint(playerid, 3.0, litterpos[0], litterpos[1], litterpos[2]))
- {
- new curpay, litters;
- MySQLFetchInt(SQLID[playerid], "Litters", litters, "players");
- if(litters > 30) return SysMsg(playerid, "O seu saco está cheio, leve-o para o QG e esvazie-o.");
- OnePlayAnim(playerid, "KNIFE", "knife_4", 2.0, 0, 0, 0, 0, 0);
- DestroyDynamicObjectEx(LitterPlaced[i], "LitterPlaced[i]");
- LitterPlaced[i] = 0;
- gLitterCount --;
- litters ++;
- MySQLUpdateInt(SQLID[playerid], "Litters", litters, "players");
- curpay = litters * 10;
- format(gstr, sizeof(gstr),"* %s usa uma lixeira para colocar algum lixo em uma bolsa. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"Litter Picked! +$10 adicionado ao seu sub-Pay. Você pode coletar este pagamento de $%i a qualquer momento ou continuar a trabalhar.", curpay);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- new bonus, tmp_litter = litters;
- if(tmp_litter >= 10)
- {
- do
- {
- tmp_litter -= 10;
- bonus ++;
- }
- while (tmp_litter >= 10);
- }
- bonus *= 100;
- format(gstr, sizeof(gstr),"Current litter bag: %i x Litter, meaning you could get a bonus of $%i for emptying now.", litters, bonus);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- return true;
- }
- }
- }
- SysMsg(playerid,"You are not near any litter.");
- return true;
- }
- CMD:checklitterbag(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- if(Job[playerid] != JOB_MAINTENANCE) return SysMsg(playerid,"Only Maintenance Workers can perform this action.");
- if(JobDuty[playerid] == 0) return SysMsg(playerid,"You must be on job duty to perform this action.");
- new curpay, litters;
- MySQLFetchInt(SQLID[playerid], "Litters", litters, "players");
- curpay = litters * 10;
- new bonus, tmp_litter = litters;
- if(tmp_litter >= 10)
- {
- do
- {
- tmp_litter -= 10;
- bonus ++;
- }
- while(tmp_litter >= 10);
- }
- bonus *= 100;
- format(gstr, sizeof(gstr),"Current litter bag has %i x Litter. Meaning $%i pay and a bonus of $%i for emptying now.", litters, curpay, bonus);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- return true;
- }
- CMD:emptylitterbag(playerid, params[])//REVISAR
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- if(Job[playerid] != JOB_MAINTENANCE) return SysMsg(playerid,"Somente os trabalhadores de manutenção podem executar esta ação.");
- if(JobDuty[playerid] == 0) return SysMsg(playerid,"Você deve estar no dever de trabalho para executar esta ação.");
- if(!IsPlayerInRangeOfPoint(playerid, 3.0, 2237.668945, 23.48138, 26.45635)) return SysMsg(playerid,"Você deve estar no edifício de manutenção para executar esta ação.");
- new curpay, litters, count;
- MySQLFetchInt(SQLID[playerid], "Litters", litters, "players");
- if(litters == 0) return SysMsg(playerid, "You have no litter to empty.");
- curpay = litters * 10;
- count = litters;
- new bonus;
- if(litters >= 10)
- {
- do
- {
- litters -= 10;
- bonus ++;
- }
- while(litters >= 10);
- }
- bonus *= 100;
- new totalpay = curpay + bonus;
- MySQLUpdateInt(SQLID[playerid], "Litters", 0, "players");//revisar
- GivePlayerCash(playerid, totalpay);
- SendClientMessageF(playerid, COLOR_WHITE, "[Trabalhador da manutenção] Litter: %i, Pagamento Base ($10 per litter): $%i, Bonus ($100 per 10 litter): $%i [TOTAL PAY: $%i]", count, curpay, bonus, totalpay);
- if(count >= 10) UnlockAchievement(playerid, 38);
- return true;
- }
- //end of job commands
- //Phone commands
- CMD:p(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(IsPhoneRinging[playerid] == -1) return SysMsg(playerid,"Não há ninguém na linha.");
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid, "Seu celular está desligado, então você não pode atender a chamada.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você já está no telefone.");
- if(IsPlayerInWater(playerid)) return SysMsg(playerid,"Você não pode usar seu celular se estiver na água.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o celular enquanto estiver algemado.");
- if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
- {
- if(AttachedObjects[playerid][6][aoModelID] != 0)
- {
- RemovePlayerAttachedObject(playerid, 6);
- }
- AttachedObjects[playerid][6][aoModelID] = 330;
- AttachedObjects[playerid][6][aoBone] = 6;
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);
- SetPlayerAttachedObject(playerid, 6, 330, 6);
- }
- CallerID[playerid] = IsPhoneRinging[playerid];
- IsPhoneRinging[playerid] = -1;
- if(UsingPayPhone[CallerID[playerid]] == 0) LastNumber[playerid] = PhoneData[CallerID[playerid]][pNumber];
- SendClientMessage(playerid, COLOR_GREY, "Você pegou seu celular.");
- SendClientMessage(CallerID[playerid], COLOR_GREY, "Atenderam a chamada...");
- format(gstr, sizeof(gstr),"* %s pega seu celular do bolso e atende a chamada... *",NameRP(playerid));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- CMD:pickup(playerid, params[]) return cmd_p(playerid, params);
- CMD:finalizar(playerid)//finalizar
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(!UsingPayPhone[playerid] && PhoneData[playerid][pPower] == 0) return SysMsg(playerid, "Seu telefone está desligado.");
- if(Inventory[playerid][MobilePhone] == 0 && UsingPayPhone[playerid] == 0) return SysMsg(playerid,"Você não está usando um telefone.");
- if(CallerID[playerid] != -1 || IsPhoneRinging[playerid] != -1)
- {
- new playa = CallerID[playerid];
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USECELLPHONE)
- {
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE);
- AttachedObjects[playerid][6][aoModelID] = 0;
- AttachedObjects[playerid][6][aoBone] = 0;
- RemovePlayerAttachedObject(playerid, 6);
- }
- if(GetPlayerSpecialAction(playa) == SPECIAL_ACTION_USECELLPHONE)
- {
- SetPlayerSpecialAction(playa, SPECIAL_ACTION_STOPUSECELLPHONE);
- AttachedObjects[playa][6][aoModelID] = 0;
- AttachedObjects[playa][6][aoBone] = 0;
- RemovePlayerAttachedObject(playa, 6);
- }
- if(UsingPayPhone[playerid] > 0)
- {
- PayPhoneInUse[UsingPayPhone[playerid]-1] = 0;
- UsingPayPhone[playerid] = 0;
- TogglePlayerControllable(playerid, 1);
- SetCameraBehindPlayer(playerid);
- SendClientMessage(playerid,COLOR_GREY,"[Telefone público] {87CEFF}Você finalizou a chamada.");
- format(sgstr, sizeof(sgstr),"* %s coloca o telefone no gancho novamente. *",NameRP(playerid));
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- SendClientMessage(playa, COLOR_GREY, "[Celular] {87CEFF}Eles desligaram a linha, a ligação caiu.");
- SendClientMessage(playerid, COLOR_GREY, "[Celular] {87CEFF}Você finalizou a chamada.");
- format(sgstr, sizeof(sgstr),"* %s finaliza a chamada. *",NameRP(playerid));
- SetPlayerChatBubble(playerid, sgstr, COLOR_EMOTE, 15.0, 6000);
- }
- if(UsingPayPhone[playa] > 0)
- {
- PayPhoneInUse[UsingPayPhone[playa]-1] = 0;
- UsingPayPhone[playa] = 0;
- TogglePlayerControllable(playa, 1);
- SetCameraBehindPlayer(playa);
- SendClientMessage(playa,COLOR_GREY,"[Telefone público] {87CEFF}Você finalizou a chamada.");
- format(sgstr, sizeof(sgstr),"* %s coloca o telefone no gancho novamente. *",NameRP(playa));
- ProxDetector(15.0,playa,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- format(sgstr, sizeof(sgstr),"* %s finaliza a chamada. *",NameRP(playa));
- SetPlayerChatBubble(playa, sgstr, COLOR_EMOTE, 15.0, 6000);
- }
- MobileSpeaker[playerid] = 0;
- CallerID[playerid] = -1;
- CallerID[playa] = -1;
- IsPhoneRinging[playerid] = -1;
- IsPhoneRinging[playa] = -1;
- return true;
- }
- if(CallerService[playerid] != -1)
- {
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USECELLPHONE)
- {
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE);
- AttachedObjects[playerid][6][aoModelID] = 0;
- AttachedObjects[playerid][6][aoBone] = 0;
- RemovePlayerAttachedObject(playerid, 6);
- }
- SendClientMessage(playerid,COLOR_GREY,"[Celular] {87CEFF}Você finalizou a chamada.");
- format(sgstr, sizeof(sgstr),"* %s finaliza a chamada de seu celular. *",NameRP(playerid));
- SetPlayerChatBubble(playerid, sgstr, COLOR_EMOTE, 15.0, 6000);
- CallerService[playerid] = -1;
- return true;
- }
- SysMsg(playerid, "Seu celular não está tocando no momento.");
- return true;
- }
- CMD:cf(playerid) return cmd_finalizar(playerid);
- CMD:retornarchamada(playerid, params[])//retornarchamada
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(IsPhoneRinging[playerid] >= 0) return SysMsg(playerid,"Seu celular está tocando. atenda primeiro.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você já está usando seu celular. /finalizar primeiro.");
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid,"Seu celular está desligado.");
- if(LastNumber[playerid] == -1) return SysMsg(playerid,"Você não tem um número para ligar de volta.");
- if(IsPlayerInWater(playerid)) return SysMsg(playerid,"Você não pode usar seu celular se estiver na água.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o celular enquanto estiver algemado.");
- new numberstr[12];
- format(numberstr, 12, "%i", LastNumber[playerid]);
- cmd_chamar(playerid, numberstr);
- return true;
- }
- CMD:chamar(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(IsPhoneRinging[playerid] >= 0) return SysMsg(playerid,"Seu celular está tocando. atenda primeiro.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você já está usando seu celular. /finalizar primeiro.");
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid,"Seu celular está desligado.");
- if(!HasPhoneSignal(playerid)) return SysMsg(playerid,"Sem serviço.");
- if(UsingPayPhone[playerid] > 0) return SysMsg(playerid,"Você já está no telefone.");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu celular foi confiscado e seria devolvido após a sua libertação.");
- if(IsPlayerInWater(playerid)) return SysMsg(playerid,"Você não pode usar seu celular se estiver na água.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o celular enquanto estiver algemado.");
- new callnumber = -1;
- if(isnull(params)) return SysMsg(playerid,"Use: /chamar [número ou nome do contato] (ou /discar)") && SysMsg(playerid,"Números úteis") && SysMsg(playerid,"Linha de emergência - 911") && SysMsg(playerid,"SANews - 726") && SysMsg(playerid,"Taxi Co. - 444") && SysMsg(playerid,"Elite Trucking - 927") && SysMsg(playerid, "Mecânico - 118");
- if(IsNumeric(params)) callnumber = strval(params);
- else
- {
- for(new i = 0; i < MAX_PHONECONTACTS; i++)
- {
- if(PhoneContacts[playerid][i][cID] != 0 && !isnull(PhoneContacts[playerid][i][ContactName]))
- {
- if(strcmp(params, PhoneContacts[playerid][i][ContactName], true) == 0)
- {
- callnumber = PhoneContacts[playerid][i][ContactNumber];
- break;
- }
- }
- }
- if(callnumber == -1) return SysMsg(playerid, "Esse nome não foi encontrado na lista de contatos.");
- }
- ProcessPhoneCall(playerid, callnumber);
- return true;
- }
- CMD:discar(playerid, params[]) return cmd_chamar(playerid, params);//discar
- CMD:contatos(playerid)//contatos
- {
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid, "Seu celular está desligado.");
- gstr[0] = EOS;
- new ccount = GetContactsCount(playerid);
- if(ccount > 0) strcat(gstr, "Ver todos os contatos\n");
- if(ccount < GetMaxContactLimitForPlayer(playerid)) strcat(gstr, "Criar um contato\n");
- if(ccount > 0) strcat(gstr, "Deleta um contato\nEditar um contato\n");
- Dialog_Show(playerid, ContactsMenu, DIALOG_STYLE_LIST, "Menu de contatos", gstr, "Selecionar", "Cancelar");
- return true;
- }
- CMD:celular(playerid)
- {
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(IsPhoneRinging[playerid] >= 0) return SysMsg(playerid,"Seu celular está tocando. atenda primeiro.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você já está usando seu celular. /finalizar primeiro.");
- if(UsingPayPhone[playerid] > 0) return SysMsg(playerid,"Por favor, termine de usar o telefone público antes de usar seu celular.");
- if(IsPlayerInWater(playerid)) return SysMsg(playerid,"Você não pode usar seu celular se estiver na água.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o celular enquanto estiver algemado.");
- DisplayPhoneMenu(playerid);
- format(gstr, sizeof(gstr),"* %s pega seu celular do bolso e pressiona alguns botões.. *", NameRP(playerid));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- CMD:telefonepublico(playerid, params[])//telefonepublico
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(IsPhoneRinging[playerid] >= 0) return SysMsg(playerid,"Seu celular está tocando. atenda primeiro.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você já está usando seu celular. /finalizar primeiro.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SysMsg(playerid,"De pé!");
- if(UsingPayPhone[playerid] == 1) return SysMsg(playerid, "Você está usando um telefone público.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o celular enquanto estiver algemado.");
- new NumberCalled;
- if(sscanf(params, "i", NumberCalled)) return SysMsg(playerid,"Use: /telefonepublico [number]");
- if(NumberCalled < 1 || NumberCalled > 9999999) return SysMsg(playerid,"Número de rede inválido.");
- if(NumberCalled == PhoneData[playerid][pNumber]) return SysMsg(playerid,"Você não pode ligar para o seu próprio telefone.");
- if(!PlayerImprisoned{playerid})
- {
- if(Cash[playerid] < 5 && NumberCalled != 911) return SysMsg(playerid,"You need $5 to make a call.");
- }
- if(IsPlayerInRangeOfPoint(playerid, 2.0, 256.7420349121, -81.5554428101, 1.2701275349)) // bb liquor
- {
- if(PayPhoneInUse[0] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 251.1188, -77.4623, 2.7296);
- SetPlayerCameraLookAt(playerid, 260.9838, -78.8487, 1.8581);
- PayPhoneInUse[0] = 1;
- UsingPayPhone[playerid] = 1;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 273.56250, -171.4013671875, 1.9214571714)) // bb gym
- {
- if(PayPhoneInUse[1] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 291.4234, -175.0688, 4.9296);
- SetPlayerCameraLookAt(playerid, 281.4782, -174.0235, 3.7109);
- PayPhoneInUse[1] = 1;
- UsingPayPhone[playerid] = 2;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 1279.6098632813, 263.5825500488, 19.9056930542)) // mont central
- {
- if(PayPhoneInUse[2] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 1268.5700, 259.6120, 26.0062);
- SetPlayerCameraLookAt(playerid, 1277.8419, 259.6120, 22.2601);
- PayPhoneInUse[2] = 1;
- UsingPayPhone[playerid] = 3;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 1226.0195312500, 330.1572265625, 19.9056930542)) // mont hospital
- {
- if(PayPhoneInUse[3] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 1223.7540, 344.2998, 25.0116);
- SetPlayerCameraLookAt(playerid, 1228.1376, 335.3118, 21.7559);
- PayPhoneInUse[3] = 1;
- UsingPayPhone[playerid] = 4;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 2270.9658203125, 50.8583984375, 26.1763782501)) // palomino general store
- {
- if(PayPhoneInUse[4] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 2262.6542, 46.6263, 32.2843);
- SetPlayerCameraLookAt(playerid, 2271.7558, 48.3955, 28.5383);
- PayPhoneInUse[4] = 1;
- UsingPayPhone[playerid] = 5;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 2275.0713, -76.8855, 26.5763)) // palomino library
- {
- if(PayPhoneInUse[5] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 2259.4619, -88.2675, 28.9991);
- SetPlayerCameraLookAt(playerid, 2265.8898, -80.6071, 28.9991);
- PayPhoneInUse[5] = 1;
- UsingPayPhone[playerid] = 6;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 2334.2177734375, -5.5068359375, 26.1764545441)) // palomino cafe
- {
- if(PayPhoneInUse[6] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 2346.5444, 1.2500, 34.0843);
- SetPlayerCameraLookAt(playerid, 2337.9726, 1.2500, 28.9339);
- PayPhoneInUse[6] = 1;
- UsingPayPhone[playerid] = 7;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -155.2096405029, 1208.0728759766, 19.4341907501)) // fort c. king ring
- {
- if(PayPhoneInUse[7] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, -135.0444, 1232.8094, 34.4937);
- SetPlayerCameraLookAt(playerid, -141.9910, 1225.6160, 29.1945);
- PayPhoneInUse[7] = 1;
- UsingPayPhone[playerid] = 8;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -205.1318359375, 1128.0488281250, 19.4341907501)) // FC mayor house
- {
- if(PayPhoneInUse[8] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, -184.6137, 1126.4040, 24.6929);
- SetPlayerCameraLookAt(playerid, -194.4891, 1126.2316, 23.1285);
- PayPhoneInUse[8] = 1;
- UsingPayPhone[playerid] = 9;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -13.1679687500, 1183.0556640625, 19.7134227753)) // FC beef grill
- {
- if(PayPhoneInUse[9] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, -38.0793, 1187.0872, 21.5520);
- SetPlayerCameraLookAt(playerid, -28.0930, 1186.5639, 22.2496);
- PayPhoneInUse[9] = 1;
- UsingPayPhone[playerid] = 10;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 1349.6008,232.3512,19.5547)) // mont pizza
- {
- if(PayPhoneInUse[10] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 1344.4250,233.1461,21.5547);
- SetPlayerCameraLookAt(playerid, 1349.6008,232.3512,19.5547);
- PayPhoneInUse[10] = 1;
- UsingPayPhone[playerid] = 11;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 711.5770263672, -475.6603393555, 16.0279407501)) // dill paynspray
- {
- if(PayPhoneInUse[11] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 705.6245, -482.0432, 21.1359);
- SetPlayerCameraLookAt(playerid, 712.8022, -475.8037, 18.0457);
- PayPhoneInUse[11] = 1;
- UsingPayPhone[playerid] = 12;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 2154.1416, 66.5370, 26.9873)) // palomino bridge
- {
- if(PayPhoneInUse[12] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 2151.7534, 64.0967, 28.8964);
- SetPlayerCameraLookAt(playerid, 2154.1416, 66.5370, 26.9873);
- PayPhoneInUse[12] = 1;
- UsingPayPhone[playerid] = 13;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 1256.3623046875, 147.20568847656, 20.088111877441)) // mont driving school
- {
- if(PayPhoneInUse[13] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 1248.2823, 152.7991, 24.2069);
- SetPlayerCameraLookAt(playerid, 1254.1035, 145.3483, 20.9513);
- PayPhoneInUse[13] = 1;
- UsingPayPhone[playerid] = 14;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, 673.415954, -589.050598, 16.335937)) // dill south
- {
- if(PayPhoneInUse[14] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- SetPlayerCameraPos(playerid, 676.0861, -580.8543, 18.0359);
- SetPlayerCameraLookAt(playerid, 676.0861, -590.8543, 18.0359);
- PayPhoneInUse[14] = 1;
- UsingPayPhone[playerid] = 15;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2097.108642, -2331.721191, 30.625)) // angel pine
- {
- if(PayPhoneInUse[15] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[15] = 1;
- UsingPayPhone[playerid] = 16;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2171.307861, -2353.388427, 30.625)) // angel pine
- {
- if(PayPhoneInUse[16] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[16] = 1;
- UsingPayPhone[playerid] = 17;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2197.533203, -2418.167968, 30.625)) // angel pine
- {
- if(PayPhoneInUse[17] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[17] = 1;
- UsingPayPhone[playerid] = 18;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2177.902099, -2436.297363, 30.625)) // angel pine
- {
- if(PayPhoneInUse[18] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[18] = 1;
- UsingPayPhone[playerid] = 19;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2128.440673, -2446.063720, 30.174999)) // angel pine
- {
- if(PayPhoneInUse[20] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[20] = 1;
- UsingPayPhone[playerid] = 21;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2093.919189, -2477.046875, 30.174999)) // angel pine
- {
- if(PayPhoneInUse[21] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[21] = 1;
- UsingPayPhone[playerid] = 22;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -1572.513427, -2725.353515, 48.293457)) // angel pine
- {
- if(PayPhoneInUse[22] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[22] = 1;
- UsingPayPhone[playerid] = 23;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2451.410156, 2321.001464, 4.073258)) // bayside
- {
- if(PayPhoneInUse[23] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[23] = 1;
- UsingPayPhone[playerid] = 24;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2553.039062, 2320.415527, 5.056630)) // bayside
- {
- if(PayPhoneInUse[24] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[24] = 1;
- UsingPayPhone[playerid] = 25;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -2550.275390, 2320.460449, 5.060738)) // bayside
- {
- if(PayPhoneInUse[25] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[25] = 1;
- UsingPayPhone[playerid] = 26;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, -673.593444, 2179.334960, 3836.8)) // prison
- {
- if(PayPhoneInUse[26] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[26] = 1;
- UsingPayPhone[playerid] = 27;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, 1034.3674, -1115.4692, 2025.2595)) // st hideout
- {
- if(PayPhoneInUse[27] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[27] = 1;
- UsingPayPhone[playerid] = 28;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, 1236.6080, 184.4952, 2091.3687)) // info center
- {
- if(PayPhoneInUse[28] == 1) return SysMsg(playerid, "Esse telefone já está sendo usado.");
- PayPhoneInUse[28] = 1;
- UsingPayPhone[playerid] = 29;
- SetCameraBehindPlayer(playerid);
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, -801.9138, -1912.3365, 7.0407)) //camp bob payphone
- {
- if(PayPhoneInUse[29] == 1) return SysMsg(playerid, "O telefone público já está em uso.");
- PayPhoneInUse[29] = 1;
- UsingPayPhone[playerid] = 30;
- SetCameraBehindPlayer(playerid);
- }
- if(UsingPayPhone[playerid] == 0) return SysMsg(playerid, "Você não está perto de qualquer telefone público.");
- format(gstr, sizeof(gstr),"* %s pega o telefone público e disca alguns números... *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- TogglePlayerControllable(playerid, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);
- if(AttachedObjects[playerid][6][aoModelID] != 0)
- {
- RemovePlayerAttachedObject(playerid, 6);
- }
- AttachedObjects[playerid][6][aoModelID] = 330;
- AttachedObjects[playerid][6][aoBone] = 6;
- SetPlayerAttachedObject(playerid, 6, 330, 6);
- if(NumberCalled == 444) //Cabbie Company
- {
- Dialog_Show(playerid, TaxiMenu, DIALOG_STYLE_LIST, "Cabbie Co - Selecione o serviço que você precisa", "Taxi", "Selecionar", "Desligar");
- CallerService[playerid] = 444;
- return true;
- }
- if(NumberCalled == 911) //Police & EMS
- {
- SendClientMessage(playerid, COLOR_WHITE, "Você ligou para a central de emergência de San Andreas. Você precisa de Polícia, Fire ou EMS?");
- CallerService[playerid] = 911;
- return true;
- }
- if(NumberCalled == 927) //Elite Trucking
- {
- new truckers = 0;
- foreach(new i: Player)
- {
- if(Logged{i} && Faction[i] == FACTION_TRUCKING)
- {
- truckers++;
- }
- }
- if(truckers == 0)
- {
- SysMsg(playerid, "'Você ligou para Elite Trucking, nosso serviço de ajuda está indisponível no momento. Por favor, ligue de volta mais tarde..'");
- TogglePlayerControllable(playerid, 1);
- PayPhoneInUse[UsingPayPhone[playerid]-1] = 0;
- UsingPayPhone[playerid] = 0;
- SetCameraBehindPlayer(playerid);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE);
- AttachedObjects[playerid][6][aoModelID] = 0;
- AttachedObjects[playerid][6][aoBone] = 0;
- RemovePlayerAttachedObject(playerid, 6);
- return true;
- }
- if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
- {
- if(AttachedObjects[playerid][6][aoModelID] != 0)
- {
- RemovePlayerAttachedObject(playerid, 6);
- }
- AttachedObjects[playerid][6][aoModelID] = 330;
- AttachedObjects[playerid][6][aoBone] = 6;
- SetPlayerAttachedObject(playerid, 6, 330, 6);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);
- }
- SendClientMessage(playerid, COLOR_WHITE, "Você está na linha direta Elite Trucking, como podemos ajudá-lo hoje?");
- CallerService[playerid] = 927;
- return true;
- }
- if(NumberCalled == 118) //Mechanic
- {
- new mechanics = 0;
- foreach(new i: Player)
- {
- if(Logged{i} && Job[i] == JOB_MECHANIC)
- {
- mechanics++;
- }
- }
- if(mechanics == 0) return SysMsg(playerid, "'Olá, nós Lamentamos informá-lo que não há atualmente nenhum mecânico em serviço. Por favor, tente novamente mais tarde.'");
- if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
- {
- if(AttachedObjects[playerid][6][aoModelID] != 0)
- {
- RemovePlayerAttachedObject(playerid, 6);
- }
- AttachedObjects[playerid][6][aoModelID] = 330;
- AttachedObjects[playerid][6][aoBone] = 6;
- SetPlayerAttachedObject(playerid, 6, 330, 6);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);
- }
- SendClientMessage(playerid, COLOR_WHITE, "'Você ligou para o serviço de mecânico de San Andreas, como podemos ajudá-lo hoje?");
- CallerService[playerid] = 118;
- return true;
- }
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(PhoneData[i][pNumber] == NumberCalled && CallerID[i] == -1 && IsPhoneRinging[i] == -1 && PhoneData[i][pPower] == 1 && Inventory[i][MobilePhone] == 1)
- {
- SetPlayerChatBubble(i, " Phone rings *", COLOR_EMOTE, 15.0, 6000);
- SendClientMessageF(i, COLOR_GREY, "Seu celular está tocando (Número = %i)... Use '/pickup' ou '/p' para atender.", 1000 + UsingPayPhone[playerid]);
- SendClientMessageF(playerid, COLOR_GREY, "Você está chamando o número %i... Use '/finalizar' ou '/h' para cancelar.", NumberCalled);
- if(!PlayerImprisoned{playerid}) GivePlayerCash(playerid, -5);
- CallerID[playerid] = i;
- IsPhoneRinging[i] = playerid;
- MobileSpeaker[playerid] = 0;
- return true;
- }
- }
- }
- SysMsg(playerid,"Operadora: \"Esse número é inválido ou esta ocupado.\"");
- TogglePlayerControllable(playerid, 1);
- PayPhoneInUse[UsingPayPhone[playerid]-1] = 0;
- UsingPayPhone[playerid] = 0;
- SetCameraBehindPlayer(playerid);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE);
- AttachedObjects[playerid][6][aoModelID] = 0;
- AttachedObjects[playerid][6][aoBone] = 0;
- RemovePlayerAttachedObject(playerid, 6);
- return true;
- }
- CMD:celularon(playerid)
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(PhoneData[playerid][pPower] == 1) return SysMsg(playerid,"Seu celular já está ligado.");
- if(PhoneData[playerid][pBattery] == 0) return SysMsg(playerid,"Seu celular está sem bateria.");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu celular foi confiscado e será devolvido após a sua libertação.");
- if(IsPlayerInWater(playerid)) return SysMsg(playerid,"Você não pode usar o celular enquanto estiver algemado..");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o celular enquanto estiver algemado.");
- PhoneData[playerid][pPower] = 1;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePower = 1 WHERE id = %i", PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s pressiona um botão para ligar o celular. *", NameRP(playerid));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 6000);
- SendClientMessage(playerid, COLOR_WHITE, "Seu celular está ligado agora.");
- return true;
- }
- CMD:celularoff(playerid)
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid,"Seu celular já está desligado.");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu celular foi confiscado e será devolvido após o seu lançamento.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o seu celular enquanto está algemado.");
- if(IsPhoneRinging[playerid] >= 0) return SysMsg(playerid,"Seu celular está tocando. Responda primeiro.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você já está usando seu celular. /finalizar primeiro.");
- PhoneData[playerid][pPower] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePower = 0 WHERE id = %i", PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s preciona um botão e desliga seu celular. *", NameRP(playerid));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 6000);
- SendClientMessage(playerid, COLOR_WHITE, "Seu celular está desligado agora.");
- return true;
- }
- CMD:coff(playerid) return cmd_celularoff(playerid);//coff
- CMD:con(playerid) return cmd_celularon(playerid);//con
- CMD:ccarregar(playerid, params[])//carregar celular /ccarregar
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(PhoneData[playerid][pBattery] >= 99) return SysMsg(playerid,"Seu celular já está bateria cheia.");
- new vid = GetPlayerVehicleID(playerid);
- if(vid > 0 && Inventory[playerid][CarAdapter] == 1)
- {
- if(InCarCharging[playerid] == 1) return SysMsg(playerid, "Você não pode recarregar seu celular se já está sendo recarregado.");
- if(VehicleData[vid][VehicleOwnerSQLID] == SQLID[playerid])
- {
- if(IsPlane(vid) || IsBoat(vid) || IsBike(vid) || IsPushBike(vid)) return SysMsg(playerid,"Você não pode recarregar um celular neste veículo.");
- if(PhoneData[playerid][pBattery] <= 98)
- {
- InCarCharging[playerid] = 1;
- PhoneData[playerid][pBattery] = floatadd(PhoneData[playerid][pBattery], 1);
- format(gstr, sizeof(gstr),"* %s começa a recarregar o telefone dentro do carro. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "O seu celular está a carregar, aguarde. Saia do veículo para parar de carregar.");
- }
- else
- {
- PhoneData[playerid][pBattery] = 100;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET Battery = %i WHERE id = %i", floatround(PhoneData[playerid][pBattery]), PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s recarrega o celular dentro do carro. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "Seu celular agora está totalmente recarregado.");
- }
- return true;
- }
- new faction = IsFactionVehicle(vid);
- if(faction > 0 && Faction[playerid] == faction)
- {
- if(PhoneData[playerid][pBattery] <= 98)
- {
- InCarCharging[playerid] = 1;
- PhoneData[playerid][pBattery] = floatadd(PhoneData[playerid][pBattery], 1);
- format(gstr, sizeof(gstr),"* %s começa carregar seu celular dentro do %s. *", NameRP(playerid),GetVehicleName(vid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "O seu celular está a carregar, aguarde. Saia do veículo para parar de carregar.");
- }
- else
- {
- PhoneData[playerid][pBattery] = 100;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET Battery = %i WHERE id = %i", floatround(PhoneData[playerid][pBattery]), PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s recarrega seu celular dentro do %s. *", NameRP(playerid),GetVehicleName(vid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "Seu telefone agora está completamente recarregado.");
- }
- return true;
- }
- }
- if(IsInHouseID[playerid] != -1)
- {
- if(HouseData[IsInHouseID[playerid]][HouseOwnerSQLID] == SQLID[playerid] || IsHouseGuestSQL(playerid) == HouseData[IsInHouseID[playerid]][HouseSQLID])
- {
- PhoneData[playerid][pBattery] = 100;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET Battery = %i WHERE id = %i", floatround(PhoneData[playerid][pBattery]), PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s recarrega seu telefone dentro de sua casa. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "Seu telefone agora está totalmente recarregado.");
- return true;
- }
- }
- if(IsPlayerInRangeOfPoint(playerid, 5.0, -2236.320312, 130.603515, 1035.41406))
- {
- PhoneData[playerid][pBattery] = 100;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET Battery = %i WHERE id = %i", floatround(PhoneData[playerid][pBattery]), PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s recarrega seu telefone usando o ponto de recarga público na loja. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "Seu celular agora está totalmente carregado.");
- return true;
- }
- SysMsg(playerid,"Você deve estar em uma loja eletrônica, sua casa ou um veículo próprio para recarregar um celular.");
- return true;
- }
- CMD:enviarsms(playerid, params[])//sms
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid,"Seu telefone está desligado. Ligue-o para enviar mensagens de texto.");
- if(!HasPhoneSignal(playerid)) return SysMsg(playerid,"Sem serviço.");
- if(IsPlayerInWater(playerid)) return SysMsg(playerid,"Você não pode usar seu telefone celular enquanto estiver na água.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o seu telefone enquanto está algemado.");
- new numberOrName[24], TextMsg[170], actualNumber;
- if(sscanf(params, "s[24]s[170]", numberOrName, TextMsg)) return SysMsg(playerid,"Use: /sms [número de telefone ou nome do contato] [mensagem]");
- if(IsNumeric(numberOrName)) actualNumber = strval(numberOrName);
- else
- {
- for(new i = 0; i < MAX_PHONECONTACTS; i++)
- {
- if(PhoneContacts[playerid][i][cID] > 0 && !isnull(PhoneContacts[playerid][i][ContactName]))
- {
- if(strcmp(numberOrName, PhoneContacts[playerid][i][ContactName], true) == 0)
- {
- actualNumber = PhoneContacts[playerid][i][ContactNumber];
- break;
- }
- }
- }
- if(actualNumber <= 0) return SysMsg(playerid, "Esse nome não foi encontrado em sua lista de contatos.");
- }
- ProcessTextMessage(playerid, actualNumber, TextMsg);
- return true;
- }
- CMD:sms(playerid, params[]) return cmd_respondersms(playerid, params);
- CMD:respondersms(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um telefone móvel.");
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid,"Seu telefone está desligado. Ligue-o para enviar mensagens de texto.");
- if(!HasPhoneSignal(playerid)) return SysMsg(playerid,"Sem Serviço.");
- if(LastSMSNumber[playerid] == 0) return SysMsg(playerid,"Ninguém lhe enviou uma mensagem que você possa responder rapidamente.");
- if(IsPlayerInWater(playerid)) return SysMsg(playerid,"Você não pode usar seu telefone celular enquanto estiver na água.");
- if(isnull(params)) return SysMsg(playerid,"Use: /resms [mensagem] *Enviará para a última pessoa que lhe enviou uma mensagem*");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o seu telefone enquanto está algemado.");
- ProcessTextMessage(playerid, LastSMSNumber[playerid], params);
- return true;
- }
- CMD:resms(playerid, params[]) return cmd_respondersms(playerid, params);//resms
- CMD:celularmostrar(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid, "Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid, "Você não tem um telefone celular.");
- PhoneData[playerid][ShowPhonebook] = !PhoneData[playerid][ShowPhonebook];
- if(PhoneData[playerid][ShowPhonebook])
- {
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET ShowPhonebook = 1 WHERE OwnerSQLID = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessage(playerid, COLOR_WHITE, "Suas informações agora são exibidas na lista telefônica.");
- }
- else
- {
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET ShowPhonebook = 0 WHERE OwnerSQLID = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessage(playerid, COLOR_WHITE, "Suas informações não serão mais exibidas na lista telefônica.");
- }
- return true;
- }
- CMD:getnum(playerid, params[]) return cmd_numero(playerid, params);
- CMD:number(playerid, params[]) return cmd_numero(playerid, params);
- CMD:phonebook(playerid, params[]) return cmd_numero(playerid, params);
- CMD:numero(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][Phonebook] == 0) return SysMsg(playerid,"Você precisa comprar uma lista telefonica em uma Loja de eletronicos.");
- if(isnull(params)) return SysMsg(playerid,"Use: /numero [Nome]");
- if(strlen(params) < 5) return SysMsg(playerid,"Por favor, especifique o nome.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT OwnerName,PhoneNumber FROM phones WHERE OwnerName LIKE '%%%e%%' AND ShowPhonebook = 1 LIMIT 25", params);
- mysql_pquery(conn, mquery, "ProcessPhonebookRequest", "ds", playerid, params);
- return true;
- }
- CMD:celularinfo(playerid)//celularinfo
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular móvel.");
- SendClientMessageF(playerid, COLOR_WHITE, "[{0098F2}%s's{FFFFFF} Informação do celular]", RPName(PhoneData[playerid][pOwnerName]));
- SendClientMessageF(playerid,COLOR_WHITE, "Número de celular: %i", PhoneData[playerid][pNumber]);
- SendClientMessageF(playerid,COLOR_WHITE, "Crédito telefônico: {4BB74C}$%i", PhoneData[playerid][pCredit]);
- SendClientMessage(playerid,COLOR_WHITE, "Rede telefônica: S.A. Mobile");
- switch(floatround(PhoneData[playerid][pBattery]))
- {
- case 90..100: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}|{F5D000}|{FAE500}|{F1F500}|{D6FF0A}|{ACFF05}|{66CD00}|{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 80..89: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}|{F5D000}|{FAE500}|{F1F500}|{D6FF0A}|{ACFF05}|{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 70..79: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}|{F5D000}|{FAE500}|{F1F500}|{D6FF0A}|{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 60..69: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}|{F5D000}|{FAE500}|{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 50..59: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}|{F5D000}|{FAE500}|{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 40..49: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}|{F5D000}|{FAE500}-{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 30..39: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}|{F5D000}-{FAE500}-{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 20..29: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}|{FAA200}-{F5D000}-{FAE500}-{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 10..19: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}|{EB7100}-{FAA200}-{F5D000}-{FAE500}-{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 1..9: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}|{F53500}-{EB7100}-{FAA200}-{F5D000}-{FAE500}-{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- case 0: SendClientMessageF(playerid, COLOR_WHITE, "Bateria do celular: %.1f %% [{F01000}-{F53500}-{EB7100}-{FAA200}-{F5D000}-{FAE500}-{F1F500}-{D6FF0A}-{ACFF05}-{66CD00}-{FFFFFF}]", PhoneData[playerid][pBattery]);
- }
- if(PhoneData[playerid][pPower] == 1) SendClientMessage(playerid, COLOR_WHITE, "Status do celular: {16BD00}On");
- else SendClientMessage(playerid, COLOR_WHITE, "Status do celular: {F01000}Off");
- if(HasPhoneSignal(playerid)) SendClientMessage(playerid, COLOR_WHITE, "Sinal do celular: {16BD00}Serviço completo");
- else SendClientMessage(playerid, COLOR_WHITE, "Sinal do celular: {F01000}Sem Serviço");
- return true;
- }
- CMD:cinfo(playerid) return cmd_celularinfo(playerid);//cinfo
- CMD:lp(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid, "Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(isnull(params)) return SysMsg(playerid,"Use: Conversa silenciosa do celular: /lp [chat]");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) ProcessPhoneChat(playerid, GetPlayerVehicleID(playerid), params, 4.0);
- else SysMsg(playerid,"Você não está falando em um celular.");
- return true;
- }
- CMD:caltofalante(playerid, params[])//caltofalante
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você não tem um celular.");
- if(PhoneData[playerid][pPower] == 0) return SysMsg(playerid,"Seu celular está desligado. Ligue-o para mudar as configurações.");
- if(isnull(params)) return SysMsg(playerid,"Use: /caltofalante [on/off]");
- if(strcmp("on", params, false) == 0)
- {
- if(MobileSpeaker[playerid] == 1) return SysMsg(playerid, "Seu alto-falante móvel já está ligado.");
- MobileSpeaker[playerid] = 1;
- SendClientMessage(playerid,COLOR_GOLD,"O seu alto-falante móvel está ativado.");
- SetPlayerChatBubble(playerid, "* Liga o alto-falante do celular. *", COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- else if(strcmp("off", params, false) == 0)
- {
- if(MobileSpeaker[playerid] == 0) return SysMsg(playerid, "Your Mobile loudspeaker is already off.");
- MobileSpeaker[playerid] = 0;
- SendClientMessage(playerid,COLOR_GOLD,"Your Mobile loudspeaker is now off.");
- SetPlayerChatBubble(playerid, "* Desliga o alto-falante do celular. *", COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- else SysMsg(playerid,"Use: /caltofalante [on/off]");
- return true;
- }
- //end of phone commands
- //Vehicle rental commands
- CMD:alugarveiculo(playerid)
- {
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você deve estar em um veículo de aluguel para usar este comando.");
- if(Licenses[playerid][LICENSE_CAR] != 1) return SysMsg(playerid, "Você deve ter uma carteira de motorista válida para alugar veículos.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid, "Você deve ter um celular celular para alugar veículos.");
- new v = GetPlayerVehicleID(playerid);
- if(!IsRentalCar(v)) return SysMsg(playerid, "Você deve estar em um veículo de aluguel para usar este comando.");
- if(RentalCar[playerid] == v) return SysMsg(playerid, "Você já alugou este veículo.");
- if(RentalCar[playerid] != 0) return SysMsg(playerid, "Você já está alugando um veículo.");
- foreach(new i: Player) if(RentalCar[i] == v) return SysMsg(playerid, "Este veículo já está sendo alugado por alguém.");
- if(RentalData[v][RentalPrice] > Cash[playerid]) return SysMsgF(playerid, "Você precisa de $%i para alugar este veículo.", RentalData[v][RentalPrice]);
- RentalCar[playerid] = RentalData[v][CarID];
- GivePlayerCash(playerid, -RentalData[v][RentalPrice]);
- SendSplitMessageF(playerid, COLOR_WHITE, "Agora você está alugando este {BCDCBC}%s{FFFFFF}. Você será cobrado {4BB74C}$%i{FFFFFF} cada hora até que você devolvê-lo. Você pode deolver o veículo usando {BCDCBC}/devolverveiculo{FFFFFF} no lote do carro alugado.", GetVehicleName(v), RentalData[v][RentalPrice]);
- return true;
- }
- CMD:devolverveiculo(playerid)//devolverveiculo
- {
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você deve estar em um veículo alugavel para usar este comando.");
- new v = GetPlayerVehicleID(playerid);
- if(IsOwnedCar(v)) return SysMsg(playerid, "Você deve estar em um veículo alugavel para usar este comando.");
- if(IsFactionVehicle(v)) return SysMsg(playerid, "Você deve estar em um veículo alugavel para usar este comando.");
- if(RentalCar[playerid] == 0) return SysMsg(playerid, "Você não está alugando este veículo.");
- foreach(new i: Player) if(RentalCar[i] == v && i != playerid) return SysMsg(playerid, "Este veículo está sendo alugado por outra pessoa..");
- if(RentalCar[playerid] != v) return SysMsg(playerid, "Você não está alugando este veículo.");
- if(!IsPlayerInRangeOfPoint(playerid, 10.0, RentalData[v][rPosX], RentalData[v][rPosY], RentalData[v][rPosZ])) return SysMsg(playerid, "Você não está perto de nenhum centro de locação.");
- ToggleVehicleLock(v, false);
- TogglePlayerControllable(playerid, false);
- RemovePlayerFromVehicle(playerid);
- SetTimerEx("UnFreezePlayer", 200, 0, "d", playerid);
- RepairVehicleEx(v);
- SetVehicleToRespawnEx(v);
- RentalCar[playerid] = 0;
- RentalTime[playerid] = 0;
- RentalRevoked{playerid} = false;
- new Float:vh, price;
- GetVehicleHealth(v, vh);
- price = ((1000 - floatround(vh)) * 3);
- if(vh < 1000)
- {
- SendClientMessageF(playerid, COLOR_RED, "Você foi cobrado um adicional $%s pelos danos causados no veiculo.", format_cash(price));
- GivePlayerCash(playerid, -price);
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Você devolveu {BCDCBC}%s{FFFFFF} para compania de veiculos alugados.", GetVehicleName(v));
- return true;
- }
- //end of vehicle rental commands
- //Sidejob commands
- CMD:varrer(playerid, params[])//varrer
- {
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser executada enquanto você estiver em algemas.");
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para usar essa função.");
- if(IsSweeping[playerid] == 1) return SysMsg(playerid,"Você já está limpando.");
- if(!IsPlayerInRangeOfPoint(playerid,30.0,2248.173828,34.401039,26.484375)) return SysMsg(playerid,"Você precisa estar na estação de limpeza de rua para iniciar.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você deve estar em um varredor.");
- if(!IsSweeper(GetPlayerVehicleID(playerid))) return SysMsg(playerid,"Você precisa estar em um veiculo de varredor de rua.");
- if(SweepSpamTime[playerid] > 0) return SysMsgF(playerid, "Você precisa esperar %i minutos antes de trabalhar como varredor novamente.",SweepSpamTime[playerid]);
- new Float:vhealth;
- GetVehicleHealth(GetPlayerVehicleID(playerid), vhealth);
- IsSweeping[playerid] = 1;
- SweepIndex[playerid] = 1;
- SidejobDamage[playerid] = floatround(vhealth);
- if(SidejobDamage[playerid] > 1000)
- {
- SidejobDamage[playerid] = 1000;
- SetVehicleHealthEx(GetPlayerVehicleID(playerid), 1000);
- }
- SetPlayerCheckpointEx(playerid,2264.321289,38.975631,26.335937,3.0); //varrerCheckPoint1
- SweepObjects[playerid][0] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2264.321289, 38.975631, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][1] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2291.153564, 32.220500, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][2] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2291.385009, -10.033596, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][3] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2262.811279, -25.737337, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][4] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2221.316894, -39.803321, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][5] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2224.734130, -97.211372, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][6] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2279.059570, -101.231948, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][7] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2331.573730, -100.848052, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][8] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2354.369384, -30.711990, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][9] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2396.579345, -15.579336, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][10] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2396.870605, 31.072309, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][11] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2450.659179, 39.145729, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][12] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2524.689208, 39.686870, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][13] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2536.922607, 85.697204, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][14] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2475.518310, 113.706550, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][15] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2461.460693, 55.430244, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][16] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2411.414306, 44.014770, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][17] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2396.525878, 80.764770, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][18] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2320.194335, 93.953422, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][19] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2243.012451, 94.132713, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][20] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2221.406250, 54.612068, 25.345, 0.0, 0.0, 0.0);
- SweepObjects[playerid][21] = CreateDynamicObject(LitterObjects[random(sizeof(LitterObjects))], 2243.154052, 38.083045, 25.345, 0.0, 0.0, 0.0);
- SendClientMessage(playerid,COLOR_ORANGE,"Ajude a limpar as ruas de Palomino Creek varrendo as estradas.");
- return true;
- }
- CMD:entregar(playerid)//deliver
- {
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser executada enquanto você estiver em algemas.");
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado para usar esse recurso.");
- if(IsDelivering[playerid] == 1) return SysMsg(playerid,"Você já está fazendo uma entrega.");
- if(!IsPlayerInRangeOfPoint(playerid, 30.0, 1387.9158, 264.1994, 19.5669)) return SysMsg(playerid,"Você deve estar na Pizza Stack para iniciar.");
- if(IsPizzaCar(GetPlayerVehicleID(playerid)) == 0 || GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você não estár em um veiculo para entregar.");
- if(DeliverSpamTime[playerid] > 0) return SysMsgF(playerid, "Você precisa esperar %i minutos para entregar novamente.", DeliverSpamTime[playerid]);
- new homecount = 0, zone[MAX_ZONE_NAME + 1], homesfound[100], town = random(4), townname[50], pizzacount = 0;
- if(town == 0) townname = "Montgomery";
- if(town == 1) townname = "Palomino Creek";
- if(town == 2) townname = "Blueberry";
- if(town == 3) townname = "Fort Carson";
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(homecount == 99) break; //end the loop if the homecount somehow gets this high to prevent crashing.
- Get2DZone(HouseData[h][oPosX], HouseData[h][oPosY], zone, MAX_ZONE_NAME);
- if(strcmp(townname, zone, true) == 0)
- {
- //original peach block homes, remove this code when/if the mapping is removed.
- if(HouseData[h][HouseSQLID] == 74 || HouseData[h][HouseSQLID] == 75 || HouseData[h][HouseSQLID] == 8 || HouseData[h][HouseSQLID] == 70) continue;
- homesfound[homecount] = h;
- homecount ++;
- }
- }
- //should never happen but it's just a failsafe.
- if(homecount == 0) return SysMsg(playerid, "Ocorreu um erro ao tentar encontrar casas para você entregar.");
- for(new p = 0; p < homecount; p++)
- {
- if(pizzacount == 10) break;
- new randy = random(12);
- if(randy == 2)
- {
- PizzaHomes[playerid][pizzacount] = homesfound[p];
- PizzaMarkers[playerid][pizzacount] = CreateDynamicMapIcon(HouseData[homesfound[p]][oPosX], HouseData[homesfound[p]][oPosY], HouseData[homesfound[p]][oPosZ], 29, -1, -1, -1, playerid);
- pizzacount ++;
- }
- }
- //should never happen but it's just a failsafe.
- if(pizzacount == 0) return SysMsg(playerid, "Ocorreu um erro ao tentar encontrar casas para você entregar.");
- new Float:vhealth;
- GetVehicleHealth(GetPlayerVehicleID(playerid), vhealth);
- IsDelivering[playerid] = 1;
- SidejobDamage[playerid] = floatround(vhealth);
- if(SidejobDamage[playerid] > 1000)
- {
- SidejobDamage[playerid] = 1000;
- SetVehicleHealthEx(GetPlayerVehicleID(playerid), 1000);
- }
- //apply Temporizador de Spam
- if(DeliverLevel[playerid] == 1)
- {
- if(IsDonator[playerid] >= 2) DeliverSpamTime[playerid] = 30;
- else DeliverSpamTime[playerid] = 60;
- }
- else if(DeliverLevel[playerid] == 2)
- {
- if(IsDonator[playerid] >= 2) DeliverSpamTime[playerid] = 30;
- else DeliverSpamTime[playerid] = 55;
- }
- else if(DeliverLevel[playerid] == 3)
- {
- if(IsDonator[playerid] >= 2) DeliverSpamTime[playerid] = 30;
- else DeliverSpamTime[playerid] = 50;
- }
- else if(DeliverLevel[playerid] == 4)
- {
- if(IsDonator[playerid] >= 2) DeliverSpamTime[playerid] = 30;
- else DeliverSpamTime[playerid] = 45;
- }
- else if(DeliverLevel[playerid] == 5)
- {
- if(IsDonator[playerid] >= 2) DeliverSpamTime[playerid] = 30;
- else DeliverSpamTime[playerid] = 40;
- }
- SendClientMessageF(playerid, COLOR_LIGHTGREEN, "Você foi designado entregar %i pizza homes in {FFFFFF}%s{00FF00}. Use /entregacasas para ver as casas mencionadas.", pizzacount, townname);//observar
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "Alternativa, procure ícones de pizza no seu minimap para obter uma idéia geral de onde você deve entregar pizzas.");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "Use /pegarpizza para pegar uma caixa de pizza do veiculo, siga até o icone da casa para entregar.");
- return true;
- }
- CMD:pegarpizza(playerid)//pegarpizza
- {
- if(IsDelivering[playerid] != 1) return SysMsg(playerid, "Você não está entregando pizza.");
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você não deve estar em um veículo.");
- if(DeliverIndex[playerid] == 1) return SysMsg(playerid, "Você não tem mais pizzas para entregar.");
- new v = GetNearestVehicle(playerid);
- if(!IsPizzaCar(v)) return SysMsg(playerid, "O veículo deve ser um Pizzaboy.");
- if(HasPizza{playerid})
- {
- RemovePlayerAttachedObject(playerid, PizzaIndex[playerid]);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- HasPizza{playerid} = false;
- PizzaIndex[playerid] = -1;
- }
- else
- {
- new index = GetFreePlayerObjectIndex(playerid);
- if(index == -1) return SysMsg(playerid, "Não foi possível encontrar um slot de roupa para anexar uma caixa de pizza. Pegue um item.");
- SetPlayerAttachedObject(playerid, index, 19571, 1, -0.035999, 0.354000, -0.040999, -90.000000, -0.000000, -90.000000, 1.000000, 1.000000, 1.000000);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
- HasPizza{playerid} = true;
- PizzaIndex[playerid] = index;
- format(sgstr, sizeof(sgstr),"* %s pega uma caixa de pizza quente do compartimento do veiculo. *",NameRP(playerid));
- ProxDetector(20.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- CMD:entregacasas(playerid)//entregacasas
- {
- if(!Logged{playerid}) return true;
- if(IsDelivering[playerid] != 1) return SysMsg(playerid, "Você não está entregando pizza.");
- gstr[0] = EOS;
- new homecount = 0;
- for(new x = 0; x < 10; x++)
- {
- if(PizzaHomes[playerid][x] != -1)
- {
- format(tgstr, sizeof(tgstr), "%i: %s\n", x + 1, HouseData[PizzaHomes[playerid][x]][HouseDescription]);
- strcat(gstr, tgstr);
- homecount ++;
- }
- }
- if(homecount == 0) return SysMsg(playerid, "Não foi possível encontrar quaisquer casas para entregar.");
- else ShowMessage(playerid, "Casas à espera de entrega", gstr, "Obrigado!");
- return true;
- }
- CMD:truck(playerid, params[])
- {
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser executada enquanto você estiver em algemas.");
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado para usar esse recurso.");
- if(IsTrucking[playerid] == 1) return SysMsg(playerid,"Você já está transportando.");
- if(TruckSpamTime[playerid] > 0) return SysMsgF(playerid, "Você precisa esperar %i minutos para usar o Truck novamente.",TruckSpamTime[playerid]);
- if(IsPlayerInRangeOfPoint(playerid,50.0,66.75766,-256.393,1.57867) || (IsPlayerInRangeOfPoint(playerid,50.0,585.711547, 1664.336669, 6.992187) && Faction[playerid] == FACTION_TRUCKING))
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- if(vehicleid == 0) return SysMsg(playerid, "Você precisa estar em um truck.");
- if(IsTruck(vehicleid) || GetVehicleModel(vehicleid) == 498)
- {
- if(Faction[playerid] == FACTION_TRUCKING || IsPlayerAdmin(playerid) || TruckLevel[playerid] == 5)
- {
- gstr[0] = EOS;
- strcat(gstr, "Seleção Random\n");
- for(new i = 0; i < sizeof(TruckRoutes); i++)
- {
- //vehicle is boxville
- if(GetVehicleModel(vehicleid) != 498 && TruckRoutes[i][TruckRouteTrailerID] == 0) continue;
- if(GetVehicleModel(vehicleid) == 498 && TruckRoutes[i][TruckRouteTrailerID] > 0) continue;
- format(sgstr, sizeof(sgstr), "DE %s PARA %s\n", TruckRoutes[i][TruckRouteStart], TruckRoutes[i][TruckRouteEnd]);
- strcat(gstr, sgstr);
- }
- Dialog_Show(playerid, TruckingRoutes, DIALOG_STYLE_LIST, "Selecionar trabalho", gstr, "Selecionar", "Cancelar");
- return true;
- }
- if(GetVehicleModel(vehicleid) == 498 && Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid, "Somente Elite Trucking pode usar um Boxville para este trabalho.");
- new Float:vhealth;
- GetVehicleHealth(GetPlayerVehicleID(playerid), vhealth);
- IsTrucking[playerid] = 1;
- TruckIndex[playerid] = 0;
- SidejobDamage[playerid] = floatround(vhealth);
- if(SidejobDamage[playerid] > 1000)
- {
- SidejobDamage[playerid] = 1000;
- SetVehicleHealthEx(GetPlayerVehicleID(playerid), 1000);
- }
- new randLoad = random(sizeof(TruckRoutes));
- TruckRouteId[playerid] = randLoad;
- SetPlayerCheckpointEx(playerid, TruckRoutes[randLoad][TruckRoutePoints][0], TruckRoutes[randLoad][TruckRoutePoints][1], TruckRoutes[randLoad][TruckRoutePoints][2], 7.0);
- SendClientMessage(playerid, COLOR_ORANGE, "[TRABALHO TRUCKING]");
- SendClientMessageF(playerid, COLOR_ORANGE, "Busque uma carga em: %s", TruckRoutes[randLoad][TruckRouteStart]);
- SendClientMessageF(playerid, COLOR_ORANGE, "Entregue para: %s", TruckRoutes[randLoad][TruckRouteEnd]);
- SendClientMessageF(playerid, COLOR_ORANGE, "Transportando: %s", TruckRoutes[randLoad][TruckRouteLoad]);
- SendClientMessage(playerid, COLOR_WHITE, "Vá para o checkpoint para buscar a carga.");
- }
- else return SysMsg(playerid,"Você precisa está em um truck.");
- return true;
- }
- SysMsg(playerid,"Você precisa está no HQ de caminhões para iniciar uma rota.");
- return true;
- }
- CMD:drivebus(playerid, params[])
- {
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser executada enquanto você estiver em algemas.");
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado para usar esta ferramenta.");
- if(IsDrivingBus{playerid}) return SysMsg(playerid,"Você já está dirigindo uma rota de ônibus.");
- if(!IsPlayerInRangeOfPoint(playerid,50.0,-29.788593,-306.246978,5.422851)) return SysMsg(playerid,"Você deve estar na estação de ônibus para começar.");
- if(!IsBus(GetPlayerVehicleID(playerid)) || GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você deve estar em um ônibus. (como Driver)");
- if(HasGPSWaypoint[playerid] == 1) return SysMsg(playerid,"Você não pode fazer um trabalho de ônibus quando o GPS estiver ativo.");
- IsDrivingBus{playerid} = true;
- BusRouteIndex[playerid] = 0;
- SidejobDamage[playerid] = 500;
- SetPlayerRaceCheckpointEx(playerid,2, -228.403884,-285.622985,1.078125 ,0.0, 0.0, 0.0, 5.0); //BUS_0_PanapticanCutoff
- SendClientMessage(playerid, COLOR_WHITE, "Motorista de ônibus: Drive Around Red County Parando em paradas de ônibus marcadas. Cada parada de ônibus deixa você $10.");
- SendClientMessage(playerid, COLOR_WHITE, "Você está dirigindo a rota 101: Red County > Bone County > Red County.");
- SendClientMessage(playerid, COLOR_WHITE, "Parada de ônibus atual: n/a - Próxima parada: The Panopticon Cutoff (Início do serviço)");
- return true;
- }
- CMD:coalmine(playerid, params[])
- {
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser executada enquanto você estiver em algemas.");
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado para usar esse recurso.");
- if(IsCoalmining[playerid] > 0) return SysMsg(playerid,"Você já estar em um coalmining.");
- if(!IsPlayerInRangeOfPoint(playerid,30.0,841.066101, 861.726196, 13.106781)) return SysMsg(playerid,"Você deve estar na pedreira para começar.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você precisa estar em um coalmine Dumper.");
- if(!IsDumper(GetPlayerVehicleID(playerid))) return SysMsg(playerid,"Você precisa estar em um coalmine Dumper.");
- if(CoalmineSpamTime[playerid] > 0) return SysMsgF(playerid, "Você precisa esperar %i minutos antes de iniciar uma nova rota.",CoalmineSpamTime[playerid]);
- new Float:vhealth;
- GetVehicleHealth(GetPlayerVehicleID(playerid), vhealth);
- IsCoalmining[playerid] = random(2)+1;
- CoalmineIndex[playerid] = 1;
- SidejobDamage[playerid] = floatround(vhealth);
- if(SidejobDamage[playerid] > 1000)
- {
- SidejobDamage[playerid] = 1000;
- SetVehicleHealthEx(GetPlayerVehicleID(playerid), 1000);
- }
- if(IsCoalmining[playerid] == 1)
- {
- SetPlayerCheckpointEx(playerid,815.422424, 847.468750, 10.534412,6.0); //COALMINE_1
- SendClientMessage(playerid,COLOR_ORANGE,"Dirija o Coal dentro da Pedreira. Você esta dirigindo na rota número 1.");
- }
- else if(IsCoalmining[playerid] == 2)
- {
- SetPlayerCheckpointEx(playerid,817.027343, 846.395263, 10.584503,6.0); //COALMINE_1
- SendClientMessage(playerid,COLOR_ORANGE,"Dirija o Coal dentro da Pedreira. Você esta dirigindo na rota número 2.");
- }
- return true;
- }
- CMD:coletarlixo(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado para usar esse recurso.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser executada enquanto você estiver em algemas.");
- if(IsTrashMan[playerid] > 0) return SysMsg(playerid,"Você já está coletando lixo.");
- if(!IsPlayerInRangeOfPoint(playerid,75.0,601.516845, 1224.664794, 11.718750)) return SysMsg(playerid,"Você deve estar na fábrica para começar.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você deve estar no caminhão de lixo.");
- if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 408) return SysMsg(playerid, "Você deve estar no caminhão de lixo.");
- if(GetPlayerVehicleSeat(playerid) != 0) return SysMsg(playerid, "Você precisa estar em um caminhão de lixo para trabalhar.");
- if(TrashSpamTime[playerid] > 0) return SysMsgF(playerid, "Você precisa esperar %i antes de coletar lixo novamente.", TrashSpamTime[playerid]);
- new Float:vhealth;
- GetVehicleHealth(GetPlayerVehicleID(playerid), vhealth);
- IsTrashMan[playerid] = 1;
- TrashIndex[playerid] = 1;
- SidejobDamage[playerid] = floatround(vhealth);
- if(SidejobDamage[playerid] > 1000)
- {
- SidejobDamage[playerid] = 1000;
- SetVehicleHealthEx(GetPlayerVehicleID(playerid), 1000);
- }
- TrashMissionData[playerid][0] = GetPlayerVehicleID(playerid);
- SetPlayerCheckpointEx(playerid,167.428207, 1183.789550, 14.757812,6.0); //COALMINE_1
- SendClientMessage(playerid,COLOR_ORANGE,"Coletar lixo em todo Fort Carson. Vá para o primeiro ponto.");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "Ponto de Lixo 1: Cluckin' Bell");
- return true;
- }
- //End of sidejob commands
- //Vehicle commands
- CMD:savecar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você não está em um carro.");
- new v = GetPlayerVehicleID(playerid);
- if(IsPlayerInDynamicArea(playerid, PCArea)) return SysMsg(playerid, "Você não pode savar a posição de spawnar aqui.");
- if(IsOwnedCar(VehicleData[v][IdVehicle]))
- {
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Esse veiculo não é seu.");
- new Float:vPos[4], vworld = GetVehicleVirtualWorld(v), interior = GetPlayerInterior(playerid);
- GetVehiclePos(v, vPos[0], vPos[1], vPos[2]);
- GetVehicleZAngle(v, vPos[3]);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET LastX = %f, LastY = %f, LastZ = %f, LastRot = %f, VWorld = %i, Interior = %i WHERE id = %i", vPos[0], vPos[1], vPos[2], vPos[3], vworld, interior, VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- VehicleData[v][LastX] = vPos[0];
- VehicleData[v][LastY] = vPos[1];
- VehicleData[v][LastZ] = vPos[2];
- VehicleData[v][LastRot] = vPos[3];
- VehicleData[v][VirtualWorld] = vworld;
- VehicleData[v][FuelRemaining] = Fuel[v];
- VehicleData[v][VehicleInterior] = interior;
- SendClientMessage(playerid,COLOR_GOLD,"A posição do veiculo foi salva, ele irá respawnar aqui agora.");
- return true;
- }
- return true;
- }
- CMD:removerchaves(playerid, params[])//removerchaves
- {
- if(!Logged{playerid}) return true;
- if(VehicleBorrowKey[playerid] == 0) return SysMsg(playerid,"Você não compartilhou a chave de seu veiculo para alguém.");
- VehicleBorrowKey[playerid] = 0;
- VehicleBorrowKeyTime[playerid] = 0;
- MySQLUpdateInt(SQLID[playerid], "BorrowKey", VehicleBorrowKey[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "BorrowKeyTime", VehicleBorrowKeyTime[playerid], "players");
- SendClientMessage(playerid, COLOR_GOLD, "A copia de chave do veiculo foi removida. Você não pode mais usar o veículo que você estava compartilhando.");
- return true;
- }
- CMD:darchave(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerOwnedVehicleCount(playerid) == 0) return SysMsg(playerid,"Você não tem carros comprados para compartilha uma chave.");
- new playa = -1, vid, minutes, slot = 1, ctr;
- if(sscanf(params, "uii", playa, vid, minutes))
- {
- for(ctr = 0; ctr < MAX_VEH_PER_PLAYER; ctr++)
- {
- if(VehicleData[ctr][VehicleOwnerSQLID] == SQLID[playerid])
- {
- if(!VehicleData[ctr][Impounded])
- {
- SendClientMessageF(playerid, COLOR_WHITE, "ID %i - %s", slot, GetVehicleName(ctr));
- slot ++;
- }
- }
- }
- SysMsg(playerid,"Use: /darchave [ID ou nome do jogador] [veiculo ID do /meuscarros] [tempo em minutos]");
- return true;
- }
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode dar uma chave a si mesmo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para dar-lhe as chaves.");
- if(VehicleBorrowKey[playa] > 0) return SysMsg(playerid,"Esse jogador já tem uma chave compartilhada.");
- if(VehicleData[vid][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid,"Este veículo não pertence a você. Como tal, você não pode dar a alguém uma chave para ele.");
- if(minutes < 5 || minutes > 20160) return SysMsg(playerid,"O tempo deve estar entre 5 e 20160 minutos (14 Dias).");
- VehicleShareOffer[playa][0] = playerid;
- VehicleShareOffer[playa][1] = vid;
- VehicleShareOffer[playa][2] = minutes;
- SendClientMessageF(playa, COLOR_WHITE, "%s te ofereceu a chave do veiculo %s. Use '/aceitar chave' para confirmar.", NameEx(playerid), GetVehicleName(vid));
- SendClientMessageF(playerid, COLOR_WHITE, "Você ofereceu para %s a chave do veiculo %s. Ele precisa aceitar primeiro.", NameEx(playa), GetVehicleName(vid));
- return true;
- }
- CMD:velocimetro(playerid, params[])//velocimetro //V
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /velocimetro [on/off/tipo]");
- if(strcmp("on", params, false) == 0)
- {
- if(SpeedoActive[playerid] == 1) return SysMsg(playerid, "O seu velocímetro já está ligado.");
- SpeedoActive[playerid] = 1;
- if(GetPlayerVehicleID(playerid) > 0) PlayerTextDrawShow(playerid,SpeedText[playerid]);
- SendClientMessage(playerid,COLOR_GOLD,"O seu velocímetro agora está ligado.");
- return true;
- }
- else if(strcmp("off", params, false) == 0)
- {
- if(SpeedoActive[playerid] == 0) return SysMsg(playerid, "Seu velocímetro já está desligado.");
- SpeedoActive[playerid] = 0;
- if(GetPlayerVehicleID(playerid) > 0) PlayerTextDrawHide(playerid,SpeedText[playerid]);
- SendClientMessage(playerid,COLOR_GOLD,"Seu velocímetro agora está desligado.");
- UnlockAchievement(playerid,27);
- return true;
- }
- else if(strcmp("tipo", params, false) == 0)
- {
- if(SpeedFormat[playerid] == 0)
- {
- SpeedFormat[playerid] = 1;
- MySQLUpdateInt(SQLID[playerid], "SpeedoFormat", SpeedFormat[playerid], "players");
- SendClientMessage(playerid,COLOR_GOLD,"Seu velocímetro agora está configurado para mostrar Quilômetros por hora (KM/H).");
- UnlockAchievement(playerid,28);
- }
- else if(SpeedFormat[playerid] == 1)
- {
- SpeedFormat[playerid] = 0;
- MySQLUpdateInt(SQLID[playerid], "SpeedoFormat", SpeedFormat[playerid], "players");
- SendClientMessage(playerid,COLOR_GOLD,"Seu velocímetro agora está configurado para mostrar milhas por hora (MPH).");
- }
- return true;
- }
- SysMsg(playerid,"Use: /velocimetro [on/off/tipo]");
- return true;
- }
- CMD:vercarros(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM vehicles WHERE OwnerSQLID = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "BuyVehicleFromShop", "i", playerid);
- return true;
- }
- CMD:vermotocicletas(playerid, params[])//**viewbikes
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, 707.712890,-522.316284,16.335937)) return SysMsg(playerid,"Você deve estar na loja de motos em Dillimore.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM vehicles WHERE OwnerSQLID = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "BuyBikeFromShop", "i", playerid);
- return true;
- }
- CMD:verbarcos(playerid, params[])//viewboats
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, -2186.7673, 2413.8621, 5.1563)) return SysMsg(playerid, "Você deve estar na loja do barco nas Docas de Bayside.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM vehicles WHERE OwnerSQLID = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "BuyBoatFromShop", "i", playerid);
- return true;
- }
- CMD:verestoque(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- gstr[0] = EOS;
- new v = 0;
- strcat(gstr, "Veiculo\tPreço");
- if(IsPlayerInRangeOfPoint(playerid, 5.0, 643.642395, -492.949493, 16.335937)) //mm
- {
- for(v = 0; v < sizeof(MicksVehicleData); v++)
- {
- format(gstr, sizeof(gstr), "%s\n%s\t$%s", gstr, GetVehicleNameEx(MicksVehicleData[v][0]), format_cash(MicksVehicleData[v][1]));
- }
- SetPVarInt(playerid, "ViewingStock", 1);
- Dialog_Show(playerid, StockView, DIALOG_STYLE_TABLIST_HEADERS, "Motocicletas em Estoque", gstr, "Selecionar", "Fechar");
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 707.712890,-522.316284,16.335937)) //bike
- {
- for(v = 0; v < sizeof(BuyMotorbikeData); v++)
- {
- format(gstr, sizeof(gstr), "%s\n%s\t$%s", gstr, GetVehicleNameEx(BuyMotorbikeData[v][0]), format_cash(BuyMotorbikeData[v][1]));
- }
- SetPVarInt(playerid, "ViewingStock", 2);
- Dialog_Show(playerid, StockView, DIALOG_STYLE_TABLIST_HEADERS, "Estoque da Concessionária", gstr, "Selecionar", "Fechar");
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, -2186.7673, 2413.8621, 5.1563)) //boat
- {
- for(v = 0; v < sizeof(BuyBoatData); v++)
- {
- format(gstr, sizeof(gstr), "%s\n%s\t$%s", gstr, GetVehicleNameEx(BuyBoatData[v][0]), format_cash(BuyBoatData[v][1]));
- }
- SetPVarInt(playerid, "ViewingStock", 3);
- Dialog_Show(playerid, StockView, DIALOG_STYLE_TABLIST_HEADERS, "Estoque da Concessionária", gstr, "Selecionar", "Fechar");
- }
- else return SysMsg(playerid, "Você não está perto de nenhuma concessionária de veículos.");
- return true;
- }
- CMD:colocaravenda(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerOwnedVehicleCount(playerid) == 0) return SysMsg(playerid,"Você não tem carros para vender.");
- new v = GetPlayerVehicleID(playerid);
- if(v == 0) return SysMsg(playerid,"Você deve estar em um veículo.");
- if(v == VehicleData[v][IdVehicle])
- {
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid,"Você não possui este veículo.");
- if(VehicleData[v][ForSale]) return SysMsg(playerid,"Este veículo já está à venda.");
- if(VehicleData[v][DonatorCar]) return SysMsg(playerid,"Você não pode vender veículos Donator.");
- new askingprice;
- if(sscanf(params, "i", askingprice)) return SysMsg(playerid,"Use: /colocaravenda [Preço]");
- if(askingprice < 1 || askingprice > 10000000) return SysMsg(playerid,"O preço deve estar entre $1 e $10,000,000.");
- if(Inventory[playerid][Pen] == 0 || Inventory[playerid][Paper] == 0) return SysMsg(playerid,"Você precisa de uma caneta e papel para criar um papel de venda.");
- Inventory[playerid][Pen] --;
- Inventory[playerid][Paper] --;
- VehicleData[v][ForSale] = true;
- VehicleData[v][ForSalePrice] = askingprice;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET ForSale = 1, ForSalePrice = %i WHERE id = %i", askingprice, VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasPaper = %i, HasPen = %i WHERE id = %i", Inventory[playerid][Paper], Inventory[playerid][Pen], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- new forsale[128];
- format(forsale, sizeof(forsale), "A VENDA\n%s\n$%s\nPor favor, liga %i para mais info.", GetVehicleName(v), format_cash(VehicleData[v][ForSalePrice]), PhoneData[playerid][pNumber]);
- VehicleData[v][ForSaleLabel] = CreateDynamic3DTextLabel(forsale, COLOR_SIGN, 0.0, 0.0, 0.0, 10.0, INVALID_PLAYER_ID, VehicleData[v][IdVehicle], 1, -1, 0, -1, 30.0);
- SendClientMessageF(playerid, COLOR_WHITE, "Você definiu seu %s a venda por $%s. Mantenha seu Celular ligado para receber chamadas!", GetVehicleName(v), format_cash(VehicleData[v][ForSalePrice]));
- format(gstr, sizeof(gstr),"* %s escreve algumas informações no papel logo depois fixa sobre o vidro do %s. *",NameRP(playerid),GetVehicleName(v));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- SysMsg(playerid,"Você não pode vender este veículo.");
- return true;
- }
- //CMD:forsale(playerid, params[]) return cmd_colocaravenda(playerid, params);
- CMD:removeranuncio(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerOwnedVehicleCount(playerid) == 0) return SysMsg(playerid,"Você não tem nenhum veículo.");
- new v = GetPlayerVehicleID(playerid);
- if(v == 0) return SysMsg(playerid,"Você deve estar em um veículo.");
- if(v == VehicleData[v][IdVehicle])
- {
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid,"Você não possui este veículo.");
- if(!VehicleData[v][ForSale]) return SysMsg(playerid,"Este veículo não está à venda.");
- VehicleData[v][ForSale] = false;
- VehicleData[v][ForSalePrice] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET ForSale = 0, ForSalePrice = 0 WHERE id = %i", VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- DestroyDynamic3DTextLabel(VehicleData[v][ForSaleLabel]);
- SendClientMessageF(playerid, COLOR_WHITE, "Você cancelou a venda do seu %s.", GetVehicleName(v));
- format(gstr, sizeof(gstr),"* %s removeu o papel de venda fixado do vidro do %s. *",NameRP(playerid),GetVehicleName(v));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- return true;
- }
- CMD:refill(playerid, params[]) return cmd_abastecer(playerid, params);
- CMD:fill(playerid, params[]) return cmd_abastecer(playerid, params);
- CMD:fuel(playerid, params[]) return cmd_abastecer(playerid, params);
- CMD:abastecer(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new VehID;
- if(IsPlayerInAnyVehicle(playerid)) VehID = GetPlayerVehicleID(playerid);
- else VehID = GetClosestVehicle(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você deve estar em um veículo com um motor.");
- if(!VehicleHasEngine(VehID)) return SysMsg(playerid,"Este veículo não precisa de combustível..");
- if(!IsPlayerNearGasStation(playerid)) return SysMsg(playerid,"Você precisa estar próximo de um posto de combustível. (Red County, Bone County e Angel Pine para carros/bikes, Pista de pouso BC para aeronaves, Bayside Marina para Barcos.)");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso se estiver amarrado.");
- if(Fuel[VehID] >= 100) return SysMsg(playerid,"O tanque deste veiculo já está cheio.");
- if(EngineStatus[VehID] == 1) return SysMsg(playerid,"Por favor, desligue o veiculo para abastecer.");
- if(IsPlayerRefilling[playerid] == 1) return SysMsg(playerid,"Você já está abastecendo este veículo.");
- if(DeliveringFuel[playerid] > 0) return SysMsg(playerid, "Você não pode reabastecer seu veículo enquanto entrega combustível.");
- if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
- {
- new Float:x, Float:y, Float:z;
- GetVehiclePos(VehID, x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 15.0, x, y, z)) return SysMsg(playerid, "Você deve estar perto do veículo para reabastecer-lo.");
- }
- pRefilling[playerid] = 1;
- SetPVarInt(playerid, "fillType", 1);
- if(IsPlayerInAnyVehicle(playerid)) SendClientMessage(playerid, COLOR_WHITE, "Saia do veículo e vá para posição do tanque do veículo.");
- else
- {
- StartRefueling(playerid);
- SendClientMessage(playerid, COLOR_WHITE, "Dirija-se à tampa de combustível do veículo para começar a reabastecer.");
- }
- return true;
- }
- CMD:usargalao(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você deve estar em um veículo com um motor.");
- if(!VehicleHasEngine(VehID)) return SysMsg(playerid,"Este veículo não precisa de combustível..");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você não é o motorista.");
- if(EngineStatus[VehID] == 1) return SysMsg(playerid,"Desligue o motor do veiculo para fazer isso.");
- if(Fuel[VehID] == 100) return SysMsg(playerid,"Esse veiculo já está com o tanque cheio.");
- if(Inventory[playerid][FuelCan][0] == -1) return SysMsg(playerid,"Você não tem um galão de combustível.");
- if(Inventory[playerid][FuelCan][0] == 0) return SysMsg(playerid,"Seu galão está vazio.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso se estiver amarrado.");
- if(IsPlayerRefilling[playerid] == 1) return SysMsg(playerid,"Você já está abastecendo o veiculo.");
- new fuelAmount = -1;
- if(sscanf(params, "i", fuelAmount))
- {
- SysMsg(playerid,"Use: /usargalao [quantidade (como porcentagem)]");
- SysMsgF(playerid, "Combustível atual: %.0f porcento. Use %.0f para encher o tanque.", Fuel[VehID], floatsub(100.0, Fuel[VehID]));
- return true;
- }
- if(fuelAmount < 1 || fuelAmount > 100) return SysMsg(playerid,"Quantidade deve ser entre 1 e 100.");
- if(fuelAmount > Inventory[playerid][FuelCan][0]) return SysMsg(playerid,"Você não tem essa quantidade de combustível no galão.");
- if(Fuel[VehID] + fuelAmount > 100) return SysMsg(playerid,"Você não pode adicionar tanto combustível a este veículo.");
- if(VehID == VehicleData[VehID][IdVehicle])
- {
- if(VehicleData[VehID][VehicleOwnerSQLID] != SQLID[playerid])
- {
- if(GetVehicleFuelType(VehID) != Inventory[playerid][FuelCan][1]) return SysMsg(playerid,"Você não pode abastecer esse veiculo se você não for dono.");
- }
- }
- new Float:CapPos[3];
- GetVehiclePetrolCapPos(GetVehicleModel(VehID), CapPos[0], CapPos[1]);
- if(CapPos[0] == 0 && CapPos[1] == 0)
- {
- Inventory[playerid][FuelCan][0] = Inventory[playerid][FuelCan][0] - fuelAmount;
- Fuel[VehID] = Fuel[VehID] + fuelAmount;
- if(Fuel[VehID] < 10) TextDrawShowForPlayer(playerid, LowFuelText);
- else TextDrawHideForPlayer(playerid, LowFuelText);
- MySQLUpdateInt(SQLID[playerid], "HasFuelCan", Inventory[playerid][FuelCan][0], "players");
- if(Inventory[playerid][FuelCan][0] == 0) return SendClientMessage(playerid, COLOR_RED, "Seu galão de combustível agora está vazio, use /enchergalao para encher.");
- UpdateFuelText(VehID, gstr);
- PlayerTextDrawSetString(playerid, FuelText[playerid],gstr);
- format(gstr, sizeof(gstr),"* %s usa um galão de combustível para abastecer o veiculo %s. *",NameRP(playerid),GetVehicleNameEx(GetVehicleModel(VehID)));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_RED, "Este veículo foi reabastecido usando um galão. ((Não foi encontrada a tampa do tanque do veiculo))");
- }
- else
- {
- RemovePlayerFromVehicle(playerid);
- UsingFuelCan[playerid][1] = VehID;
- UsingFuelCan[playerid][0] = fuelAmount;
- CapPos[1] = -CapPos[1];
- RotatePointVehicleRotation(VehID, CapPos, RefuelStandPos[playerid][0], RefuelStandPos[playerid][1], RefuelStandPos[playerid][2], 1);
- SetPlayerCheckpointEx(playerid, RefuelStandPos[playerid][0], RefuelStandPos[playerid][1], RefuelStandPos[playerid][2], 0.5);
- SetPlayerAttachedObject(playerid, HOLD_OBJECT_MISC, 1650, 6, 0.15, 0.015, 0.05, 0.0, 270.0, 0.0);
- SendClientMessage(playerid, COLOR_WHITE, "> Tampa do tanque {4BB74C}aberta{FFFFFF}, vá no ponto {FF0000}marcado{FFFFFF} para abastecer o veiculo.");
- format(gstr, sizeof(gstr),"* %s preciona um botão no painel do veiculo %s e abre a tampa do tanque de combustível. *",NameRP(playerid),GetVehicleName(VehID));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- CMD:enchergalao(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerNearGasStation(playerid)) return SysMsg(playerid,"Você não está próximo a um posto de Combustivel. (Red County, Bone County e Angel Pine)");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SysMsg(playerid,"Você precisa estar a pé para fazer isso.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(IsPlayerRefilling[playerid] == 1) return SysMsg(playerid,"Você já está abastecendo.");
- if(Inventory[playerid][FuelCan][0] == -1) return SysMsg(playerid,"Você não tem um galão de gasolina para encher.");
- if(Inventory[playerid][FuelCan][0] == 100) return SysMsg(playerid,"Você já tem um galão cheio.");
- new amount, fueltype[9];
- if(sscanf(params, "s[9]i", fueltype, amount))
- {
- SysMsg(playerid,"Use: /enchergalao [gasolina/diesel] [quantidade (em porcentagem)]");
- SysMsgF(playerid, "Combustível atual: %i porcento. Use %i para seu galão.", Inventory[playerid][FuelCan][0], 100-Inventory[playerid][FuelCan][0]);
- return true;
- }
- new fuelstation = -1;
- for(new i = 0; i < MAX_FUEL_STATIONS; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 50.0, FuelStations[i][SignX], FuelStations[i][SignY], FuelStations[i][SignZ]))
- {
- fuelstation = i;
- break;
- }
- }
- if(amount < 5 || amount > 100) return SysMsg(playerid,"Você só pode abastecer de 5 a 100.");
- if(fuelstation > 0 && FuelStations[fuelstation][PetrolAmount] <= 0) return SysMsg(playerid,"Este posto de gasolina não tem mais combustível.");
- if(Inventory[playerid][FuelCan][0] + amount > 100) return SysMsg(playerid,"Este galão não pode conter tanta gasolina.");
- new gasprice;
- if(strcmp("gasolina", fueltype, true) == 0)
- {
- if(FuelStations[fuelstation][PetrolAmount] < amount) return SysMsg(playerid,"Este posto não tem toda essa quantidade de Gasolina.");
- if(Inventory[playerid][FuelCan][0] > 0 && Inventory[playerid][FuelCan][1] != FUEL_GASOLINA) return SysMsg(playerid,"Você não pode misturar Gasolina e Diesel.");
- gasprice = amount;
- if(IsDonator[playerid] < 4 && Cash[playerid] < gasprice) return SysMsg(playerid,"Você não tem dinheiro suficiente para comprar essa quantidade de Gasolina.");
- Inventory[playerid][FuelCan][1] = FUEL_GASOLINA;
- MySQLUpdateInt(SQLID[playerid], "HasFuelCanType", Inventory[playerid][FuelCan][1], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você colocou no galão de combustível {FFAB1A}%i{FFFFFF} porcento de {FFAB1A}Gasolina{FFFFFF} por {339900}$%i{FFFFFF}.", amount, gasprice);
- FuelStations[fuelstation][PetrolAmount] -= amount;
- UpdateFuelStationSign(fuelstation);
- }
- else if(strcmp("diesel", fueltype, true) == 0)
- {
- if(FuelStations[fuelstation][DieselAmount] < amount) return SysMsg(playerid,"Este posto não tem essa quantidade de Diesel.");
- if(Inventory[playerid][FuelCan][0] > 0 && Inventory[playerid][FuelCan][1] != FUEL_DIESEL) return SysMsg(playerid,"Você não pode misturar gasolina e diesel no mesmo galão.");
- gasprice = amount * 2;
- if(IsDonator[playerid] < 4 && Cash[playerid] < gasprice) return SysMsg(playerid,"Você não tem dinheiro para comprar essa quantidade de diesel.");
- Inventory[playerid][FuelCan][1] = FUEL_DIESEL;
- MySQLUpdateInt(SQLID[playerid], "HasFuelCanType", Inventory[playerid][FuelCan][1], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você colocou no galão de combustível {FFAB1A}%i{FFFFFF} porcento de {FFAB1A}Diesel{FFFFFF} por {339900}$%i{FFFFFF}.", amount, gasprice);
- FuelStations[fuelstation][DieselAmount] -= amount;
- UpdateFuelStationSign(fuelstation);
- }
- else return SysMsg(playerid,"Você deve especificar gasolina ou diesel apenas.");
- Inventory[playerid][FuelCan][0] += amount;
- MySQLUpdateInt(SQLID[playerid], "HasFuelCan", Inventory[playerid][FuelCan][0], "players");
- if(IsDonator[playerid] < 4) GivePlayerCash(playerid, -gasprice);
- format(gstr, sizeof(gstr),"* %s enche um galão de combustível. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:esvaziargalao(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SysMsg(playerid,"Você deve estar a pé para esvaziar seu galão de combustível.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso se estiver amarrado.");
- if(IsPlayerRefilling[playerid] == 1) return SysMsg(playerid,"Você está atualmente abastecendo.");
- if(Inventory[playerid][FuelCan][0] == -1) return SysMsg(playerid,"Você não tem combustível para preencher.");
- if(Inventory[playerid][FuelCan][0] == 0) return SysMsg(playerid,"Seu galão de combustível já está vazio.");
- Inventory[playerid][FuelCan][0] = 0;
- MySQLUpdateInt(SQLID[playerid], "HasFuelCan", Inventory[playerid][FuelCan][0], "players");
- format(gstr, sizeof(gstr),"* %s esvazia o galão de combustível no chão *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:minfo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0 || !VehicleHasEngine(VehID)) return SysMsg(playerid,"Você precisa estar em um veiculo que tenha motor..");
- new fueltype[20];
- switch(GetVehicleFuelType(VehID))
- {
- case FUEL_NONE: fueltype = "Nenhum";
- case FUEL_GASOLINA: fueltype = "Gasolina";
- case FUEL_DIESEL: fueltype = "Diesel";
- }
- SendClientMessageF(playerid,COLOR_WHITE, "[%s] Tipo de combustível: {38B0DE}%s", GetVehicleName(VehID), fueltype);
- return true;
- }
- CMD:engineinfo(playerid, params[]) return cmd_minfo(playerid, params);
- CMD:motoron(playerid)
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você deve estar em um veículo com motor.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de condução.");
- new VehID = GetPlayerVehicleID(playerid);
- if(!VehicleHasEngine(VehID))
- {
- EngineStatus[VehID] = 1;
- ToggleVehicleEngine(VehID, 1);
- return SysMsg(playerid,"Esse veiculo não tem motor.");
- }
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(EngineStatus[VehID] == 1) return SysMsg(playerid,"Este veículo já está ligado.");
- if(ViewingBuyableCar[playerid] == 1 || EngineStartDelay[playerid] > 0) return true;
- if(VehicleBroke[VehID] > 0) return SysMsg(playerid,"O motor está quebrado.");
- if(Fuel[VehID] <= 0) return SysMsg(playerid,"Você não pode iniciar um veiculo sem gasolina.");
- if(IsPlayerRefilling[playerid] == 1) return SysMsg(playerid,"Aguarde até terminar o reabastecimento do veículo.");
- if(RentalData[VehID][CarID] >= 1 && RentalCar[playerid] != RentalData[VehID][CarID]) return SysMsg(playerid, "Você não tem as chaves deste carro alugado.");
- if(VehicleData[VehID][VehicleOwnerSQLID] == SQLID[playerid])
- {
- if(VehicleData[VehID][Mileage] - VehicleData[VehID][LastOilMileage] >= 500)
- {
- OilTextToggle[playerid] = 1;
- if(VehicleData[VehID][Mileage] - VehicleData[VehID][LastOilMileage] >= 520)
- {
- OilTextToggle[playerid] = 3;
- SendClientMessage(playerid, COLOR_RED, "> Existe um problema com este motor de veículos e não pode ligar. (Óleo de motor)");
- format(sgstr, sizeof(sgstr),"* %s tenta ligado o %s mas o motor apresenta falhas. *", NameRP(playerid), GetVehicleNameEx(GetVehicleModel(VehID)));
- ProxDetector(20.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- }
- if(FuelTypeAfterRefuel[VehID] != GetVehicleFuelType(VehID) && FuelTypeAfterRefuel[VehID] > 0)
- {
- SetVehicleHealthEx(VehID, 275.0);
- ToggleVehicleEngine(VehID, 0);
- VehicleBroke[VehID] = 2;
- if(IsOwnedCar(VehID)) VehicleData[VehID][Hotwired] = 0;
- SendClientMessage(playerid, COLOR_RED, "> Tipo de combustível errado no veículo!");
- format(sgstr, sizeof(sgstr),"* Uma pequena manivela é ouvida quando %s tenta ligar o motor do veiculo *", NameRP(playerid), GetVehicleNameEx(GetVehicleModel(VehID)));
- ProxDetector(20.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(sgstr, sizeof(sgstr),"* Um barulho alto é ouvido vindo do %s deixando o veiculo e ponto morto. *",GetVehicleNameEx(GetVehicleModel(VehID)));
- ProxDetector(20.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_RED, "Este veiculo está quebrado e precisa ser reparado.");
- return true;
- }
- format(sgstr, sizeof(sgstr),"* torce a chave na ignição do veículo %s. *",GetVehicleNameEx(GetVehicleModel(VehID)));
- SetPlayerChatBubble(playerid, sgstr, COLOR_EMOTE, 15.0, 2000);
- TextDrawHideForPlayer(playerid, VehicleEngineText);
- ShowInfoText(playerid, "~g~Ligando motor.", 1200);
- if(Fuel[VehID] < 10) TextDrawShowForPlayer(playerid, LowFuelText);
- else TextDrawHideForPlayer(playerid, LowFuelText);
- new SlowStart[21] =
- {
- 417, 425, 447, 460, 469, 476, 487, 488, 497, 511, 512, 513, 519, 520, 548, 553, 563, 577, 592, 593
- };
- new found = 0;
- for(new dv = 0; dv < sizeof(SlowStart); dv++)
- {
- if(SlowStart[dv] == GetVehicleModel(VehID))
- {
- found = 1;
- break;
- }
- }
- if(found == 1) EngineStartDelay[playerid] = 4;
- else EngineStartDelay[playerid] = 2;
- return true;
- }
- CMD:mon(playerid) return cmd_motoron(playerid);
- CMD:ligacaodireta(playerid)//ligacaodireta
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar em um veiculo.");
- if(Inventory[playerid][Toolbox] == 0) return SysMsg(playerid,"Você precisará de ferramentes para fazer ligação direta neste veiculo.");
- new VehID = GetPlayerVehicleID(playerid);
- if(!IsOwnedCar(VehID)) return SysMsg(playerid, "Você só pode fazer ligação direta em veiculo cujo dono seja pessoas, não veiculos publicos.");
- if(EngineStatus[VehID] == 1) return SysMsg(playerid,"O motor do veiculo já esta ligado.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de condução do veiculo.");
- if(IsPushBike(VehID)) return SysMsg(playerid, "Você não pode fazer ligação direta em uma Bike.");
- if(VehicleBroke[VehID] == 1 || VehicleBroke[VehID] == 2) return SysMsg(playerid, "Este veiculo está quebrado e não se pode-se fazer ligação direta.");
- if(VehicleData[VehID][Hotwired] == 1) return SysMsg(playerid, "Este veículo já foi feito ligação direta.");
- if(!VehicleHasEngine(VehID)) return SysMsg(playerid,"Esse veiculo não tem motor.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(VehicleBroke[VehID] > 0) return SysMsg(playerid,"O motor deste veiculo está quebrado.");
- if(Fuel[VehID] <= 0) return SysMsg(playerid,"Você não pode fazer ligação direta e tentar ligar um veiculo sem combustível.");
- if(VehicleData[VehID][Mileage] - VehicleData[VehID][LastOilMileage] >= 520) return SysMsg(playerid, "Este veículo precisa de seu óleo mudado e não pode ser feito ligação direta.");
- if(IsPlayerRefilling[playerid] == 1) return SysMsg(playerid,"Aguarde até terminar o reabastecimento do veículo.");
- if(Hotwiring[playerid][0] > 0) return SysMsg(playerid,"Você já feliz ligação direta neste veiculo.");
- new engine, lights, alarm, doors, bonnet, boot, objective, Float:vhp;
- GetVehicleParamsEx(VehID, engine, lights, alarm, doors, bonnet, boot, objective);
- GetVehicleHealth(VehID, vhp);
- if(engine == 1) return SysMsg(playerid,"O motor deste veiculo jáe está ligado.");
- if(vhp <= 400) return SysMsg(playerid, "Não é possível fazer ligação direta em veiculos quebrado.");
- HotwireCar(playerid, VehID);
- return true;
- }
- CMD:moff(playerid)
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você deve estar em um veículo com motor.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de condução.");
- if(!VehicleHasEngine(VehID)) return SysMsg(playerid,"Esse veiculo não tem motor.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(EngineStatus[VehID] == 0) return SysMsg(playerid,"Esse veiculo já esta desligado.");
- if(VehicleData[VehID][VehicleOwnerSQLID] != SQLID[playerid] && VehicleData[VehID][Hotwired] == 1 && VehicleBorrowKey[playerid] != VehicleData[VehID][VehSQLID]) return SysMsg(playerid, "Você não pode desligar o motor do veiculo depois de ter feiro ligação direta.");
- EngineStatus[VehID] = 0;
- ToggleVehicleEngine(VehID, 0);
- if(VehicleData[VehID][Hotwired] == 1)
- {
- VehicleData[VehID][Hotwired] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET HotwireExpiration = 0 WHERE id = %i", VehicleData[VehID][VehSQLID]);
- mysql_pquery(conn, mquery);
- }
- SendClientMessage(playerid, COLOR_WHITE, "> Motor do veiculo foi {8B0000}Desligado");
- format(gstr, sizeof(gstr),"* %s desliga o motor do veiculo. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- ShowInfoText(playerid,"~r~Motor Desligado",2000);
- PlayerTextDrawHide(playerid, FuelText[playerid]);
- PlayerTextDrawHide(playerid, SpeedText[playerid]);
- TextDrawHideForPlayer(playerid, LowFuelText);
- foreach(new p: Player)
- {
- if(IsSpectating[p] == playerid)
- {
- PlayerTextDrawHide(p, SpeedText[playerid]);
- }
- }
- return true;
- }
- CMD:motoroff(playerid) return cmd_moff(playerid);
- CMD:motor(playerid)
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você deve estar em um veículo com motor.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de condução.");
- new VehID = GetPlayerVehicleID(playerid);
- if(!VehicleHasEngine(VehID)) return SysMsg(playerid,"Esse veiculo não tem motor.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(EngineStatus[VehID] == 0) cmd_motoron(playerid);
- else cmd_motoroff(playerid);
- return true;
- }
- CMD:luzes(playerid, params[])//luzes
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você precisa estar em um veiculo.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de condução.");
- new VehID = GetPlayerVehicleID(playerid);
- if(IsBoat(VehID) || IsPlane(VehID) || IsHelicopter(VehID)) return SysMsg(playerid,"Esse veiculo não tem luzes.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(ELMs{VehID}) return SysMsg(playerid,"Você não pode usar esse comando quando as luzes de emegência estão ligadas.");
- if(VehicleLights[VehID] == 0)
- {
- ToggleVehicleLights(VehID, 1);
- VehicleLights[VehID] = 1;
- SendClientMessage(playerid, COLOR_WHITE, "> Luzes {4BB74C}On");
- format(gstr, sizeof(gstr),"* %s acende as luzes do veiculo. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- ShowInfoText(playerid,"~g~Lights On",1000);
- VehicleLights[VehID] = 1;
- }
- else if(VehicleLights[VehID] == 1)
- {
- ToggleVehicleLights(VehID, 0);
- VehicleLights[VehID] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "> Luzes {8B0000}Off");
- format(gstr, sizeof(gstr),"* %s apaga as luzes do veiculo. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- ShowInfoText(playerid,"~r~Lights Off",1000);
- VehicleLights[VehID] = 0;
- }
- return true;
- }
- CMD:vluzes(playerid, params[])//vluzes
- {
- if(!Logged{playerid}) return true;
- SendClientMessage(playerid, COLOR_WHITE, "Precione o botão '~k~~TOGGLE_SUBMISSIONS~' do seu teclado, aguarde 1s para ligar/desligar.");
- return true;
- }
- CMD:tlon(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você precisa estar em um veiculo.");
- new VehTrailerID = GetVehicleTrailer(VehID);
- if(VehTrailerID == 0) return SysMsg(playerid,"Você deve ter um trailer.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de condução.");
- if(VehicleLights[VehTrailerID] == 1) return SysMsg(playerid,"As luzes já estão ligadas.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- ToggleVehicleLights(VehTrailerID, 1);
- VehicleLights[VehTrailerID] = 1;
- SendClientMessage(playerid, COLOR_WHITE, "> Luzes do trailer {4BB74C}On");
- ShowInfoText(playerid,"~g~Luzes do trailer On",1000);
- return true;
- }
- CMD:tloff(playerid, params[])// desligar luzes do trailer
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você deve estar em um veículo.");
- new VehTrailerID = GetVehicleTrailer(VehID);
- if(VehTrailerID == 0) return SysMsg(playerid,"Você deve ter um trailer.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de condução.");
- if(VehicleLights[VehTrailerID] == 0) return SysMsg(playerid,"As luzes já estão apagadas.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- ToggleVehicleLights(VehTrailerID, 0);
- VehicleLights[VehTrailerID] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "> Luzes do trailer {8B0000}Off");
- ShowInfoText(playerid,"~r~Luzes do trailer Off",1000);
- return true;
- }
- CMD:bonnet(playerid, params[])//abrir e fechar o capo
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você deve estar em um veículo.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você deve estar no banco do motorista.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(VehicleBoots[VehID][0] == 1)
- {
- ToggleVehicleBonnet(VehID, 0);
- VehicleBoots[VehID][0] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "> Capo {8B0000}Fechado");
- }
- else
- {
- ToggleVehicleBonnet(VehID, 1);
- VehicleBoots[VehID][0] = 1;
- SendClientMessage(playerid, COLOR_WHITE, "> Capo {8B0000}Fechado");
- format(gstr, sizeof(gstr),"* %s puxa uma alavanca dentro do veiculo e abre o capô. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- CMD:capo(playerid, params[])//capo
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você deve estar em um veículo.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você deve estar no banco do motorista.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode fazer isso estando amarrado.");
- if(VehicleBoots[VehID][0] == 1)
- {
- ToggleVehicleBonnet(VehID, 0);
- VehicleBoots[VehID][0] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "> Capo {8B0000}Fechado");
- }
- else
- {
- ToggleVehicleBonnet(VehID, 1);
- VehicleBoots[VehID][0] = 1;
- SendClientMessage(playerid, COLOR_WHITE, "> Capo {4BB74C}aberto");
- format(gstr, sizeof(gstr),"* %s puxa uma alavanca dentro do veiculo e abre o capô. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- CMD:testalarm(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new VehID = GetPlayerVehicleID(playerid);
- if(VehID == 0) return SysMsg(playerid,"Você precisa estar em um veiculo.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa esta no acento de condução.");
- new engine, lights, alarm, doors, bonnet, boot, objective;
- GetVehicleParamsEx(VehID, engine, lights, alarm, doors, bonnet, boot, objective);
- if(alarm == 1) return SysMsg(playerid,"O alarme do veiculo já esta ativado.");
- SetVehicleParamsEx(VehID, engine, 1, 1, doors, bonnet, boot, objective);
- SetTimerEx("ToggleVehicleAlarm", 10000, 0, "dd", VehID, 0);
- SendClientMessage(playerid, COLOR_WHITE, "> Alarme {4BB74C}On");
- return true;
- }
- CMD:vervisitante(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerHouseCount(playerid) == 0) return SysMsg(playerid, "Você precisa ser dono da casa para ver os visitantes.");
- if(isnull(params) || !IsNumeric(params))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", x, HouseData[HasHouseKey[playerid][x]][HouseDescription]);
- }
- }
- return SysMsg(playerid, "Use: /vervisitante [Casa ID]");
- }
- new id = strval(params);
- if(id != 0 && id != 1) return SysMsg(playerid, "ID da casa inválido.");
- if(HasHouseKey[playerid][id] == -1) return SysMsg(playerid, "Você não tem casa neste slot.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT Name,LastLogin FROM players WHERE GuestHouseID = %i", HouseData[HasHouseKey[playerid][id]][HouseSQLID]);
- mysql_pquery(conn, mquery, "ShowHouseGuests", "d", playerid);
- return true;
- }
- CMD:minhascasas(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- gstr[0] = EOS;
- if(HasHouseKey[playerid][0] == -1 && HasHouseKey[playerid][1] == -1 && IsHouseGuest(playerid) == 0 && RentRoom[playerid] == 0) return SysMsg(playerid, "Você não está hospedado em lugar nenhum.");
- if(HasHouseKey[playerid][0] != -1)
- {
- new h = HasHouseKey[playerid][0];
- strcat(gstr, "CASA: 1\nEndereço: ");
- strcat(gstr, HouseData[h][HouseDescription]);
- strcat(gstr, "\nVisitante morando: Use /vervisitante 0.");
- strcat(gstr, "\n\n");
- }
- if(HasHouseKey[playerid][1] != -1)
- {
- new h = HasHouseKey[playerid][1];
- strcat(gstr, "CASA: 2\nEndereço: ");
- strcat(gstr, HouseData[h][HouseDescription]);
- strcat(gstr, "\nVisitante morando: Use /vervisitante 1.");
- strcat(gstr, "\n\n");
- }
- new ghouse = IsHouseGuest(playerid);
- if(ghouse > 0)
- {
- strcat(gstr, "CONVIDADO DE CASA\nEndereço: ");
- strcat(gstr, HouseData[ghouse][HouseDescription]);
- strcat(gstr, "\nDono: ");
- strcat(gstr, GetSQLName(HouseData[ghouse][HouseOwnerSQLID]));
- strcat(gstr, "\n\n");
- }
- if(RentRoom[playerid] > 0)
- {
- new place[50], m = RentRoom[playerid], value[5];
- switch(MotelData[m][MotelID])
- {
- case 1,2,3,4: format(place, 50, "Fort Carson");
- case 5: format(place, 50, "Valle Ocultado");
- case 6: format(place, 50, "Angel Pine");
- case 7: format(place, 50, "Xoomer Service Station");
- }
- strcat(gstr, "QUALTO DE MOTEL\nMotel: ");
- strcat(gstr, place);
- strcat(gstr, "\nDias restantes: ");
- valstr(value, MotelData[RentRoom[playerid]][RoomDaysLeft]);
- strcat(gstr, value);
- strcat(gstr, "\n\n");
- }
- Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Minha casa - Informações", gstr, "Pronto", "");
- return true;
- }
- CMD:destruirveiculo(playerid, params[])//destruirveiculo
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado no servidor para fazer isso.");
- if(GetPlayerVehicleID(playerid) == 0) return SysMsg(playerid,"Você precisa estar em um carro para fazer isso.");
- if(IsRentalCar(GetPlayerVehicleID(playerid))) return SysMsg(playerid, "Você não pode detruir um veiculo alugado.");
- if(IsPlane(GetPlayerVehicleID(playerid))) return SysMsg(playerid,"Você não pode destruir aviões planes aqui.");
- if(IsHelicopter(GetPlayerVehicleID(playerid))) return SysMsg(playerid,"Você não pode destruir Helicopteros aqui.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar no acento de motorista/piloto do veiculo.");
- if(IsFactionVehicle(GetPlayerVehicleID(playerid)) > 0) return SysMsg(playerid,"Você não pode destruir um veiculo de facção.");
- if(BeingScrapped{GetPlayerVehicleID(playerid)}) return SysMsg(playerid, "Esse veiculo já está sendo destruido.");
- if(VehicleData[GetPlayerVehicleID(playerid)][DonatorCar]) return SysMsg(playerid,"Você não pode destruir um veiculo de Donate.");
- if(SQLID[playerid] != VehicleData[GetPlayerVehicleID(playerid)][VehicleOwnerSQLID]) return SysMsg(playerid, "Você precisa ser o dono do veiculo para destrui-lo.");
- if(IsSuitableTaxiCar(GetPlayerVehicleID(playerid)) && JobDuty[playerid] == 1) return SysMsg(playerid, "Você não pode destruir seu táxi se estiver On Duty em seu trabalho.");
- if(IsPlayerInRangeOfPoint(playerid, 7.0, 224.557, 98.4865, 3.8906) && !IsBoat(GetPlayerVehicleID(playerid)) || IsPlayerInDynamicArea(playerid, GarageAreas[5]) && IsBoat(GetPlayerVehicleID(playerid)))
- {
- BeingScrapped{GetPlayerVehicleID(playerid)} = true;
- SetPVarInt(playerid, "ScrapCar", GetPlayerVehicleID(playerid));
- RemovePlayerFromVehicle(playerid);
- if(!IsPlayerInDynamicArea(playerid, GarageAreas[5]))
- {
- SetPlayerCameraPos(playerid, 217.2184, 89.5583, 16.9906);
- SetPlayerCameraLookAt(playerid, 224.0594, 96.6424, 15.2541);
- SetPlayerPos(playerid, 218.149, 93.0901, 3.89062);
- }
- else
- {
- SetPlayerCameraPos(playerid, -2184.2893,2434.2036,13.8967);
- SetPlayerCameraLookAt(playerid, -2207.0972, 2424.8665, 0.1369);
- SetPlayerPos(playerid, -2192.6199, 2409.2146, 4.9583);
- }
- TogglePlayerControllable(playerid, 0);
- new Float:cost = (0.25 * VehicleData[GetPlayerVehicleID(playerid)][VehiclePrice]), price = floatround(cost);
- format(gstr, sizeof(gstr), "{FFFFFF}Você tem certeza que deseja destruir seu veiculo %s? Você irá receber apenas 25 porcento do valor original ($%s) e {E20000}NUNCA{FFFFFF} poderar usa-lo de novo.", GetVehicleName(GetPlayerVehicleID(playerid)), format_cash(price));
- Dialog_Show(playerid, VehicleScrap, DIALOG_STYLE_MSGBOX, "Deseja desmachar seu veiculo?", gstr, "Sim", "Não");
- }
- else SysMsg(playerid, "Você não está perto do desmanche de carro ou o Bayside Docks.");
- return true;
- }
- CMD:pegarveiculo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new bodyshop = -1;
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[1])) bodyshop = 2; //dillimore
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(IsPlayerInDynamicArea(playerid, GarageAreas[3])) bodyshop = 4; //el q
- if(IsPlayerInDynamicArea(playerid, GarageAreas[4])) bodyshop = 5; //airstrip
- if(IsPlayerInDynamicArea(playerid, GarageAreas[5])) bodyshop = 6; //bayside
- if(IsPlayerInDynamicArea(playerid, GarageAreas[6])) bodyshop = 7; //angel pine
- if(bodyshop == -1) return SysMsg(playerid,"Você não está perto de nenhum centro de reparação de veiculos.");
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Por favor, saia deste veículo primeiro.");
- gstr[0] = EOS;
- for(new v = 0, x = MAX_VEHICLES; v <= x; v++)
- {
- if((RepairData[v][rOwnerSQLID] == SQLID[playerid] && SQLID[playerid] != 0) || (RepairData[v][rFaction] == Faction[playerid] && Faction[playerid] != 0))
- {
- if(RepairData[v][rGarage] == bodyshop && RepairData[v][rTime] < gettime())
- {
- if(RepairData[v][rModel] > 399)
- {
- strcat(gstr, "{FFFFFF}");
- strcat(gstr, GetVehicleNameEx(RepairData[v][rModel]));
- strcat(gstr, " (Reg: {FFFFC0}");
- strcat(gstr, RepairData[v][rRegPlate]);
- strcat(gstr, "{FFFFFF})\n");
- }
- }
- }
- }
- if(strlen(gstr) > 10) Dialog_Show(playerid, VehicleCollection, DIALOG_STYLE_LIST, "Recolher veiculo:", gstr, "Recolher", "Cancelar");
- else SysMsg(playerid, "O serviço ainda não está pronto ou você não tem veiculos aqui.");
- return true;
- }
- CMD:reparar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new bodyshop = -1;
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[1])) bodyshop = 2; //dillimore
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(IsPlayerInDynamicArea(playerid, GarageAreas[3])) bodyshop = 4; //el q
- if(IsPlayerInDynamicArea(playerid, GarageAreas[4])) bodyshop = 5; //airstrip
- if(IsPlayerInDynamicArea(playerid, GarageAreas[5])) bodyshop = 6; //bayside
- if(IsPlayerInDynamicArea(playerid, GarageAreas[6])) bodyshop = 7; //angel pine
- if(bodyshop == -1) return SysMsg(playerid,"Você não esta em nenhuma garagem de reparação.");
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro do veiculo.");
- new VehicleId = GetPlayerVehicleID(playerid);
- if(VehicleData[VehicleId][Hotwired] == 1) return SysMsg(playerid, "Você não pode reparar um veiculo roubado.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você tem que esta sob condução do veiculo.");
- if(bodyshop == 5 && (!IsHelicopter(VehicleId) && !IsPlane(VehicleId))) return SysMsg(playerid,"Você só pode reparar helicópteros e aviões aqui.");
- if(bodyshop == 6 && !IsBoat(VehicleId)) return SysMsg(playerid, "Você só pode reparar barcos aqui.");
- if(IsRentalCar(VehicleId)) return SysMsg(playerid, "Os veículos de aluguel não podem ser reparados.");
- if(IsServerCar(VehicleId)) return SysMsg(playerid, "Os veículos do servidor não podem ser reparados.");
- if(aspawned{VehicleId}) return SysMsg(playerid, "Os veiculos spawnado por Admin não podem ser reparados.");
- if(IsOwnedCar(VehicleId)) if(VehicleData[VehicleId][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Você não pode reparar este veículo.");
- new payment[10], option, confirm[10];
- if(sscanf(params, "is[10]S()[10]", option, payment, confirm)) return SysMsg(playerid,"Use: /reparar [Opção: 1-Motor 2-Parte Trazeira(Incl. Pneus) 3-Apenas pneus 4-Tudo 5-Faróis dianteiros] [Método de pagamento: Banco ou Dinheiro]");
- if(!strmatch(payment, "banco") && !strmatch(payment, "dinheiro")) return SysMsg(playerid, "O método de pagamento deve ser bancário ou em dinheiro.");
- if(option < 1 || option > 5) return cmd_reparar(playerid, "");
- new Float:health;
- GetVehicleHealth(VehicleId, health);
- if(health < 250) return SysMsg(playerid,"O motor do seu veículo está em chamas! Não podemos tocar isso!");
- if((option == 1 || option == 4) && health >= 950) return SysMsg(playerid,"O motor do seu veículo parece estar em boas condições de funcionamento.");
- new panels, doors, lights, tires, temp = 3, th = gServerHour, tm = gServerMinute;
- new price = CalculateRepairPrice(VehicleId, option);
- if(price == 0)
- {
- if(option == 1) return SysMsg(playerid, "O motor do seu veículo parece estar funcionando bem!");
- if(option == 2 || option == 4) return SysMsg(playerid, "A lataria do seu veiculo parece estar perfeita.");
- if(option == 3) return SysMsg(playerid,"Os pneus do seu veículo não têm problemas!");
- }
- price = price * GetVehicleRepairMultiplier(GetVehicleModel(VehicleId));
- if(IsFactionVehicle(VehicleId) == FACTION_COP || IsFactionVehicle(VehicleId) == FACTION_SACFD || IsFactionVehicle(VehicleId) == FACTION_RESEARCH) price = 0;
- if(strcmp("confirmar", confirm, true) == 0 && strlen(confirm) > 1)
- {
- if(strmatch(payment, "bank"))
- {
- if(BankBalance[playerid] < price) return SysMsg(playerid, "Você não tem dinheiro suficiente em sua conta bancária pagar o reparo.");
- BankBalance[playerid] -= price;
- MySQLUpdateInt(SQLID[playerid], "Bank", BankBalance[playerid], "players");
- }
- else
- {
- if(Cash[playerid] < price) return SysMsg(playerid,"Você não tem dinheiro suficiente para este reparo.");
- GivePlayerCash(playerid, -price);
- }
- if(option == 5)
- {
- GetVehicleDamageStatus(VehicleId, panels, doors, lights, tires);
- lights = encode_lights(0, 0, 0, 0);
- UpdateVehicleDamageStatus(VehicleId, panels, doors, lights, tires);
- SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Os faróis do seu %s foram reparados, custando-lhe $%i.", GetVehicleNameEx(GetVehicleModel(VehicleId)), price);
- }
- else
- {
- for(new vl = 1, x = GetVehiclePoolSize(); vl <= x; vl++)
- {
- if(RepairData[vl][rModel] < 400)
- {
- new reptime = gettime() + 60;
- RepairData[vl][rModel] = GetVehicleModel(VehicleId);
- RepairData[vl][rGarage] = bodyshop;
- RepairData[vl][rTime] = reptime;
- if(VehicleData[VehicleId][VehicleOwnerSQLID] > 0) //cheques if the vehicle is a player vehicle.
- {
- RepairData[vl][rSQLID] = VehicleData[VehicleId][VehSQLID];
- RepairData[vl][rOwnerSQLID] = VehicleData[VehicleId][VehicleOwnerSQLID];
- RepairData[vl][rFaction] = 0;
- GetVehicleDamageStatus(VehicleId, panels, doors, lights, tires);
- switch(option)
- {
- case 1: mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET GarageRepairID = %i, GarageCollectTime = %i, DamageHealth = 1000, DamagePanels = %i, DamageDoors = %i, DamageLights = %i, DamageTires = %i, Fuel = %f, Mileage = %f WHERE id = %i", bodyshop, gettime() + 60, panels, doors, lights, tires, Fuel[VehicleId], VehicleData[VehicleId][Mileage], VehicleData[VehicleId][VehSQLID]);
- case 2: mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET GarageRepairID = %i, GarageCollectTime = %i, DamageHealth = %f, DamagePanels = 0, DamageDoors = 0, DamageLights = 0, DamageTires = 0, Fuel = %f, Mileage = %f WHERE id = %i", bodyshop, gettime() + 60, health, Fuel[VehicleId], VehicleData[VehicleId][Mileage], VehicleData[VehicleId][VehSQLID]);
- case 3: mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET GarageRepairID = %i, GarageCollectTime = %i, DamageHealth = %f, DamagePanels = %i, DamageDoors = %i, DamageLights = %i, DamageTires = 0, Fuel = %f, Mileage = %f WHERE id = %i", bodyshop, gettime() + 60, health, panels, doors, lights, Fuel[VehicleId], VehicleData[VehicleId][Mileage], VehicleData[VehicleId][VehSQLID]);
- case 4: mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET GarageRepairID = %i, GarageCollectTime = %i, DamageHealth = 1000.0, DamagePanels = 0, DamageDoors = 0, DamageLights = 0, DamageTires = 0, Fuel = %f, Mileage = %f WHERE id = %i", bodyshop, gettime() + 60, Fuel[VehicleId], VehicleData[VehicleId][Mileage], VehicleData[VehicleId][VehSQLID]);
- }
- mysql_pquery(conn, mquery);
- format(RepairData[vl][rRegPlate], MAX_REG_PLATE, VehicleData[VehicleId][RegPlate]);
- if(VehicleData[VehicleId][ForSale])
- {
- VehicleData[VehicleId][ForSale] = false;
- VehicleData[VehicleId][ForSalePrice] = 0;
- DestroyDynamic3DTextLabel(VehicleData[VehicleId][ForSaleLabel]);
- }
- VehicleBroke[VehicleId] = 0;
- FuelTypeAfterRefuel[VehicleId] = 0;
- if(vTaxiSign[VehicleId] != INVALID_OBJECT_ID) DestroyDynamicObjectEx(vTaxiSign[VehicleId], "vTaxiSign[VehicleId] 1");
- vTaxiSign[VehicleId] = INVALID_OBJECT_ID;
- }
- else if(FVehicleData[VehicleId][FVFaction] > 0) //cheques if the vehicle is a faction vehicle.
- {
- RepairData[vl][rSQLID] = FVehicleData[VehicleId][FVSQLID];
- RepairData[vl][rFaction] = FVehicleData[VehicleId][FVFaction];
- RepairData[vl][rOwnerSQLID] = 0;
- mysql_pqueryf(conn, "UPDATE fveh SET GarageRepairID = %i, GarageCollectTime = %i WHERE id = %i", bodyshop, reptime, FVehicleData[VehicleId][FVSQLID]);
- format(RepairData[vl][rRegPlate], MAX_REG_PLATE, FVehicleData[VehicleId][FVRegPlate]);
- }
- temp = 1;
- while(temp > 0)
- {
- temp --;
- tm ++;
- if(tm == 60)
- {
- tm = 0;
- th ++;
- if(th > 23)
- {
- th = 0;
- }
- }
- }
- DestroyVehicleEx(VehicleId, "vehicleid 0");
- ClearVehicleData(VehicleId);
- switch(option)
- {
- case 1: SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Seu %s foi reservado colocar um novo motor no valor de $%i, volte em torno de 1 hora ((1 minutos, %02d:%02d)) para busca-lo.", GetVehicleNameEx(RepairData[vl][rModel]), price, th, tm);
- case 2: SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Seu %s foi reservado para uma reparação completa na Lataria por $%i, volte em torno de 1 hora ((1 minutos, %02d:%02d)) para busca-lo.", GetVehicleNameEx(RepairData[vl][rModel]), price, th, tm);
- case 3: SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Seu %s foi reservado para colocar pneus novos que custam $%i, volte em torno de 1 hora ((1 minutos, %02d:%02d)) para busca-lo.", GetVehicleNameEx(RepairData[vl][rModel]), price, th, tm);
- case 4: SendClientMessageF(playerid,COLOR_LIGHTBLUE, "Seu %s foi reservado para uma reparação completa no valor de $%i, volte em torno de 1 hora ((1 minutos, %02d:%02d)) para busca-lo.", GetVehicleNameEx(RepairData[vl][rModel]), price, th, tm);
- }
- break;
- }
- }
- }
- }
- else
- {
- switch(option)
- {
- case 1: SendClientMessageF(playerid, COLOR_WHITE, "Isso irá custar {4BB74C}$%i{FFFFFF} para o seu motor a ser reparado, use '/reparar 1 %s confirmar' para aceitar.", price, payment);
- case 2: SendClientMessageF(playerid, COLOR_WHITE, "Isso irá custar {4BB74C}$%i{FFFFFF} para sua lataria ser reparada, use '/reparar 2 %s confirmar' para aceitar.", price, payment);
- case 3: SendClientMessageF(playerid, COLOR_WHITE, "Isso irá custar {4BB74C}$%i{FFFFFF} para que seus pneus sejam substituídos, use '/reparar 3 %s confirmar' para aceitar.", price, payment);
- case 4: SendClientMessageF(playerid, COLOR_WHITE, "Isso irá custar {4BB74C}$%i{FFFFFF} para a sua lataria e motor para ser consertado, use '/reparar 4 %s confirmar' para aceitar.", price, payment);
- case 5:
- {
- SendClientMessage(playerid, COLOR_RED, "NOTA: Mesmo se os faróis do seu veículo não estejam danificados, você ainda será cobrado para os reparos se você confirmar.");
- SendClientMessageF(playerid, COLOR_WHITE, "Isso irá custar {4BB74C}$%i{FFFFFF} para que suas luzes sejam consertadas, use '/reparar 5 %s confirmar' para aceitar.", price, payment);
- }
- }
- }
- return true;
- }
- CMD:vmenu(playerid)
- {
- if(!Logged{playerid}) return true;
- if(HasVehicleSpawned(playerid)) return SysMsg(playerid, "Você já tem um veículo spawnado.");
- CreateVMenuTextdraws(playerid);
- for(new v = 0; v < 3; v++)
- {
- if(PlayerCars[playerid][v][CarModel] != 0)
- {
- PlayerTextDrawSetPreviewModel(playerid, VSelectOptions[playerid][v], PlayerCars[playerid][v][CarModel]);
- PlayerTextDrawSetPreviewVehCol(playerid, VSelectOptions[playerid][v], PlayerCars[playerid][v][CarCol1], PlayerCars[playerid][v][CarCol2]);
- }
- PlayerTextDrawShow(playerid, VSelectOptions[playerid][v]);
- VSelectID[playerid][v] = v;
- }
- VSelectOffset[playerid] = 3;
- TextDrawShowForPlayer(playerid, VSelectBackground);
- TextDrawShowForPlayer(playerid, VSelectHeader);
- TextDrawShowForPlayer(playerid, VSelectUp);
- TextDrawShowForPlayer(playerid, VSelectDown);
- SelectTextDraw(playerid, COLOR_GREY);
- return true;
- }
- CMD:vdespawn(playerid)
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você deve estar em seu veículo para despawn-lo.");
- new bool:candespawn = false, vid = -1, v = GetPlayerVehicleID(playerid);
- for(new x = 0; x < MAX_VEH_PER_PLAYER; x++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 10.0, PlayerCars[playerid][x][CarPosX], PlayerCars[playerid][x][CarPosY], PlayerCars[playerid][x][CarPosZ]))
- {
- candespawn = true;
- }
- if(PlayerCars[playerid][x][CarSQLID] == VehicleData[v][VehSQLID])
- {
- vid = x;
- }
- }
- if(!candespawn) return SysMsg(playerid, "Você deve está na vaga de estacionamento do seu veiculo.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET Spawned = 0 WHERE id = %i", VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- ClearVehicleData(v);
- DestroyVehicle(v);
- PlayerCars[playerid][vid][CarSpawned] = false;
- return true;
- }
- stock HasVehicleSpawned(playerid)
- {
- for(new v = 0; v < MAX_VEH_PER_PLAYER; v++)
- {
- if(PlayerCars[playerid][v][CarSpawned]) return true;
- }
- return false;
- }
- stock CreateVMenuTextdraws(playerid)
- {
- VSelectOptions[playerid][0] = CreatePlayerTextDraw(playerid, 485.666656, 92.125976, "");
- PlayerTextDrawLetterSize(playerid, VSelectOptions[playerid][0], 0.000000, 0.000000);
- PlayerTextDrawTextSize(playerid, VSelectOptions[playerid][0], 129.000000, 90.000000);
- PlayerTextDrawAlignment(playerid, VSelectOptions[playerid][0], 1);
- PlayerTextDrawColor(playerid, VSelectOptions[playerid][0], -1);
- PlayerTextDrawSetShadow(playerid, VSelectOptions[playerid][0], 0);
- PlayerTextDrawSetOutline(playerid, VSelectOptions[playerid][0], 0);
- PlayerTextDrawBackgroundColor(playerid, VSelectOptions[playerid][0], 255);
- PlayerTextDrawFont(playerid, VSelectOptions[playerid][0], 5);
- PlayerTextDrawSetProportional(playerid, VSelectOptions[playerid][0], 0);
- PlayerTextDrawSetShadow(playerid, VSelectOptions[playerid][0], 0);
- PlayerTextDrawSetSelectable(playerid, VSelectOptions[playerid][0], true);
- PlayerTextDrawSetPreviewModel(playerid, VSelectOptions[playerid][0], 18631);
- PlayerTextDrawSetPreviewRot(playerid, VSelectOptions[playerid][0], 0.000000, 0.000000, 90.000000, 1.000000);
- PlayerTextDrawSetPreviewVehCol(playerid, VSelectOptions[playerid][0], 1, 1);
- VSelectOptions[playerid][1] = CreatePlayerTextDraw(playerid, 486.000000, 185.228927, "");
- PlayerTextDrawLetterSize(playerid, VSelectOptions[playerid][1], 0.000000, 0.000000);
- PlayerTextDrawTextSize(playerid, VSelectOptions[playerid][1], 129.000000, 90.000000);
- PlayerTextDrawAlignment(playerid, VSelectOptions[playerid][1], 1);
- PlayerTextDrawColor(playerid, VSelectOptions[playerid][1], -1);
- PlayerTextDrawSetShadow(playerid, VSelectOptions[playerid][1], 0);
- PlayerTextDrawSetOutline(playerid, VSelectOptions[playerid][1], 0);
- PlayerTextDrawBackgroundColor(playerid, VSelectOptions[playerid][1], 255);
- PlayerTextDrawFont(playerid, VSelectOptions[playerid][1], 5);
- PlayerTextDrawSetProportional(playerid, VSelectOptions[playerid][1], 0);
- PlayerTextDrawSetShadow(playerid, VSelectOptions[playerid][1], 0);
- PlayerTextDrawSetSelectable(playerid, VSelectOptions[playerid][1], true);
- PlayerTextDrawSetPreviewModel(playerid, VSelectOptions[playerid][1], 18631);
- PlayerTextDrawSetPreviewRot(playerid, VSelectOptions[playerid][1], 0.000000, 0.000000, 90.000000, 1.000000);
- PlayerTextDrawSetPreviewVehCol(playerid, VSelectOptions[playerid][1], 1, 1);
- VSelectOptions[playerid][2] = CreatePlayerTextDraw(playerid, 486.000000, 278.234588, "");
- PlayerTextDrawLetterSize(playerid, VSelectOptions[playerid][2], 0.000000, 0.000000);
- PlayerTextDrawTextSize(playerid, VSelectOptions[playerid][2], 129.000000, 90.000000);
- PlayerTextDrawAlignment(playerid, VSelectOptions[playerid][2], 1);
- PlayerTextDrawColor(playerid, VSelectOptions[playerid][2], -1);
- PlayerTextDrawSetShadow(playerid, VSelectOptions[playerid][2], 0);
- PlayerTextDrawSetOutline(playerid, VSelectOptions[playerid][2], 0);
- PlayerTextDrawBackgroundColor(playerid, VSelectOptions[playerid][2], 255);
- PlayerTextDrawFont(playerid, VSelectOptions[playerid][2], 5);
- PlayerTextDrawSetProportional(playerid, VSelectOptions[playerid][2], 0);
- PlayerTextDrawSetShadow(playerid, VSelectOptions[playerid][2], 0);
- PlayerTextDrawSetSelectable(playerid, VSelectOptions[playerid][2], true);
- PlayerTextDrawSetPreviewModel(playerid, VSelectOptions[playerid][2], 18631);
- PlayerTextDrawSetPreviewRot(playerid, VSelectOptions[playerid][2], 0.000000, 0.000000, 90.000000, 1.000000);
- PlayerTextDrawSetPreviewVehCol(playerid, VSelectOptions[playerid][2], 1, 1);
- return true;
- }
- stock HideVMenuTextdraws(playerid)
- {
- TextDrawHideForPlayer(playerid, VSelectBackground);
- TextDrawHideForPlayer(playerid, VSelectHeader);
- TextDrawHideForPlayer(playerid, VSelectUp);
- TextDrawHideForPlayer(playerid, VSelectDown);
- PlayerTextDrawDestroy(playerid, VSelectOptions[playerid][0]);
- PlayerTextDrawDestroy(playerid, VSelectOptions[playerid][1]);
- PlayerTextDrawDestroy(playerid, VSelectOptions[playerid][2]);
- VSelectOptions[playerid][0] = PlayerText:INVALID_TEXT_DRAW;
- VSelectOptions[playerid][1] = PlayerText:INVALID_TEXT_DRAW;
- VSelectOptions[playerid][2] = PlayerText:INVALID_TEXT_DRAW;
- return true;
- }
- CMD:meuscarros(playerid, params[])//meuscarros
- {
- if(!Logged{playerid}) return true;
- new lockedTxt[9], Vcount = 0, sub[100];
- gstr[0] = EOS;
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(Vcount < MAX_VEH_PER_PLAYER)
- {
- if(VehicleData[v][VehicleOwnerSQLID] == SQLID[playerid])
- {
- if(VehicleData[v][IdVehicle] > 0)
- {
- if(Locked{v}) lockedTxt = "Fechado";
- else lockedTxt = "Aberto";
- if(VehicleData[v][Hotwired] == 1) lockedTxt = "Stolen";
- Vcount ++;
- format(sub, sizeof(sub), "%s - %s (ID: %i Slot: %i Placa: %s)\n", GetVehicleNameEx(VehicleData[v][VehicleModel]), lockedTxt, VehicleData[v][IdVehicle], v, VehicleData[v][RegPlate]);
- strcat(gstr, sub);
- }
- }
- else if(ImpoundData[v][iOwnerSQLID] == SQLID[playerid])
- {
- if(ImpoundData[v][iImpoundTime] < 1) ImpoundData[v][iImpoundTime] = 0;
- if(ImpoundData[v][iImpoundTime] == 0) format(sub, sizeof(sub), "%s - Atualmente apreendido (Aguargando busca)\n", GetVehicleNameEx(ImpoundData[v][iModel]));
- else format(sub, sizeof(sub), "%s - Atualmente apreendido (%i minutos restantes)\n", GetVehicleNameEx(ImpoundData[v][iModel]), ImpoundData[v][iImpoundTime]);
- Vcount++;
- strcat(gstr, sub);
- }
- if(RepairData[v][rOwnerSQLID] == SQLID[playerid])
- {
- if(RepairData[v][rTime] < gettime()) format(sub, sizeof(sub), "%s - Sendo trabalhado no %s (Aguargando busca)\n", GetVehicleNameEx(RepairData[v][rModel]), GetRepairGarageName(RepairData[v][rGarage]));
- else format(sub, sizeof(sub), "%s - Sendo trabalhado no %s\n", GetVehicleNameEx(RepairData[v][rModel]), GetRepairGarageName(RepairData[v][rGarage]));
- Vcount++;
- strcat(gstr, sub);
- }
- }
- }
- mysql_format(conn, mquery, sizeof(mquery), "SELECT VehicleModel FROM vehicles WHERE NeedsRecovery = 1 AND OwnerSQLID = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "MyCarsRecovery", "isi", playerid, gstr, Vcount);
- return true;
- }
- CMD:customreg(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 3.5, -2032.927978, -117.508804, 1035.171875)) return SysMsg(playerid, "Você deve estar no DMV, para fazer um registro de placa personalizada.");
- new vslot = 1, regplate[MAX_REG_PLATE], confirmation[8];
- if(sscanf(params, "is[8]S()[8]", vslot, regplate, confirmation)) return SysMsg(playerid, "Use: /customreg [Veiculo ID do /meuscarros] [Novo número de Registro]");
- if(vslot < 0 || vslot > MAX_VEHICLES) return SysMsg(playerid, "Veiculo ID inválido.");
- if(VehicleData[vslot][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Você precisa ser dono do veiculo.");
- new reglen = strlen(regplate);
- if(reglen > MAX_REG_PLATE-1) return SysMsg(playerid,"O novo registro está muito longo. (7 max)");
- if(reglen < 4) return SysMsg(playerid,"O novo registro está curto. (4 min)");
- for(new letter = 0; letter < reglen; letter++)
- {
- regplate[letter] = toupper(regplate[letter]);
- if(!IsValidRegChar(regplate[letter])) return SysMsg(playerid, "Caracteres inválidos.");
- }
- if(IsRegPlateUsed(regplate)) return SysMsg(playerid,"Esse número de registro já está sendo usado.");
- new ve = vslot, regcost = -1;
- switch(reglen)
- {
- case 4: regcost = 2500000;
- case 5: regcost = 1250000;
- case 6: regcost = 300000;
- case 7: regcost = 40000;
- }
- if(regcost == -1) return SysMsg(playerid,"Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: 2-001)");
- if(isnull(confirmation)) return SendClientMessageF(playerid, COLOR_WHITE, "Alterando sua placa '%s' para '%s' no seu veiculo %s irá custar $%s. Use '/customreg %i %s confirmar' para fazer o pagamento.", VehicleData[ve][RegPlate], regplate, GetVehicleNameEx(VehicleData[ve][VehicleModel]), format_cash(regcost), vslot, regplate);
- else
- {
- if(strcmp(confirmation, "confirmar", true) == 0)
- {
- if(Cash[playerid] < regcost) return SysMsg(playerid,"Você não tem dinheiro suficiente para customizar sua placa.");
- GivePlayerCash(playerid, -regcost);
- MySQLUpdateString(VehicleData[ve][VehSQLID], "RegPlate", regplate, "vehicles");
- format(VehicleData[ve][RegPlate], MAX_REG_PLATE, regplate);
- SetVehicleNumberPlate(VehicleData[ve][IdVehicle], regplate);
- SendClientMessageF(playerid, COLOR_GOLD, "A placa do seu veiculo %s foi customizada para: '%s'. Isso custou $%s.", GetVehicleNameEx(VehicleData[ve][VehicleModel]), VehicleData[ve][RegPlate], format_cash(regcost));
- format(gstr, sizeof(gstr),"[%s] %s(%i) gastou $%i para customizar a placa do veiculo. (Total: $%i)", GetTimeStringAndSec(), NameEx(playerid), playerid, regcost, Cash[playerid]);
- AddToLog("cash", gstr);
- }
- }
- return true;
- }
- CMD:recuperarveiculo(playerid, params[])//recuperarveiculo
- {
- if(!Logged{playerid}) return true;
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM vehicles WHERE OwnerSQLID = %i AND NeedsRecovery = 1 LIMIT %i", SQLID[playerid], MAX_VEH_PER_PLAYER);
- mysql_pquery(conn, mquery, "DisplayRecoverVehicle", "i", playerid);
- return true;
- }
- CMD:carmusic(playerid, params[])
- {
- new v = GetPlayerVehicleID(playerid);
- new VehicleMusic[200];
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid,"Você precisa estar dentro de um veiculo.");
- if(GetPlayerVehicleSeat(playerid) >= 2) return SysMsg(playerid, "Somente motorista/passageiros podem usar este comando.");
- if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 408) return SysMsg(playerid,"Você não pode usar este comando em carro de trabalho.");
- if(IsPushBike(v)) return SysMsg(playerid,"Você não pode usar este comando em Bikes/Motos.");
- if(sscanf(params, "s[200]", VehicleMusic)) return SysMsg(playerid, "Use: /carmusic [link/off]");
- if(strcmp(VehicleMusic, "parar", true) == 0 || strcmp(VehicleMusic, "no", true) == 0 || strcmp(VehicleMusic, "off", true) == 0)
- {
- if(GetPlayerVehicleSeat(playerid) == 0 || GetPlayerVehicleSeat(playerid) == 1)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && GetPlayerVehicleID(i) == GetPlayerVehicleID(playerid))
- {
- StopAudioStreamForPlayer(i);
- }
- }
- vMusicPlaying{v} = false;
- strdel(vMusicLink[v], 0, 256);
- SetPlayerChatBubble(playerid, "* Preciona um botão no rádio desligando-o. *", COLOR_EMOTE, 15.0, 6000);
- }
- }
- else if(GetPlayerVehicleSeat(playerid) == 0 || GetPlayerVehicleSeat(playerid) == 1)
- {
- foreach(new i: Player)
- {
- if(Logged{i} && GetPlayerVehicleID(i) == GetPlayerVehicleID(playerid))
- {
- StopAudioStreamForPlayer(i);
- PlayAudioStreamForPlayerEx(i, VehicleMusic);
- ListeningBoom[i] = -1;
- }
- }
- vMusicPlaying{v} = true;
- strpack(vMusicLink[v], VehicleMusic);
- SetPlayerChatBubble(playerid,"* Liga o rádio, sintonizando-o para uma estação. *", COLOR_EMOTE, 15.0, 6000);
- }
- return true;
- }
- CMD:togplaca(playerid)//togplaca
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Toolbox] == 0) return SysMsg(playerid,"Você precisa de uma caixa de ferramentas para substituir sua placa.");
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar fora de um veículo para usar este recurso.");
- new v = GetNearestVehicle(playerid);
- if(IsPushBike(v) || IsHelicopter(v) || IsPlane(v)) return SysMsgF(playerid, "Esse %s não tem uma placa.", GetVehicleName(v));
- if(!TrunkXY(playerid, v)) return SysMsg(playerid, "Você não esta próximo a um veiculo.");
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsgF(playerid, "Você não é o dono deste %s.", GetVehicleName(v));
- new world = GetVehicleVirtualWorld(v);
- SetVehicleVirtualWorld(v, v);
- if(VehicleData[v][PlateToggle])
- {
- VehicleData[v][PlateToggle] = false;
- SetVehicleNumberPlate(v, VehicleData[v][RegPlate]);
- cmd_me(playerid, "pega a placa no porta-malas do veículo e se ajoelha, aparafusando-o de volta ao lugar.");
- OnePlayAnim(playerid, "BOMBER", "BOM_Plant_Loop", 3.0, 0, 0, 0, 0, 0);
- SetTimerEx("PutVehicleBack", 500, 0, "ii", v, world);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET PlateToggle = 0 WHERE id = %i", VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- return true;
- }
- else
- {
- VehicleData[v][PlateToggle] = true;
- SetVehicleNumberPlate(v, " ");
- cmd_me(playerid, "ajoelha-se e desenrosca a placa do veículo, colocando-a no porta-malas");
- OnePlayAnim(playerid, "BOMBER", "BOM_Plant_Loop", 3.0, 0, 0, 0, 0, 0);
- SetTimerEx("PutVehicleBack", 500, 0, "ii", v, world);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET PlateToggle = 1 WHERE id = %i", VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- return true;
- }
- }
- GREENSIDE::PutVehicleBack(vehicleid, world)
- {
- SetVehicleVirtualWorld(vehicleid, world);
- return true;
- }
- CMD:checkplaca(playerid, params[])//checkplat
- {
- if(!Logged{playerid}) return true;
- new v = GetClosestVehicle(playerid);
- if(VehicleData[v][PlateToggle]) SysMsgF(playerid, "Essa %s não tem uma placa mostrando.", GetVehicleName(v));
- else if(!VehicleData[v][PlateToggle]) SysMsgF(playerid, "Esse %s tem uma placa mostrando.", GetVehicleName(v));
- else SysMsg(playerid, "Esse não é um veiculo pessoal.");
- return true;
- }
- CMD:portamalas(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new tempv = GetClosestVehicle(playerid);
- if(!VehicleHasTrunk(tempv)) return SysMsg(playerid,"Esse veiculo não tem porta-malas.");
- if(tempv == INVALID_VEHICLE_ID) return SysMsg(playerid, "Você precisa esta proximo a um veiculo para usar o comando.");
- if(aspawned{tempv}) return SysMsg(playerid, "Esse veiculo é da adminstração do servidor.");
- if(IsRentalCar(tempv)) return SysMsg(playerid, "Você não pode abrir o porta-malas de carro alugado.");
- if(IsServerCar(tempv)) return SysMsg(playerid, "Você não abrir este veiculo. (Veiculo do servidor)");
- new Item[15], Amount[40], Method[15], trunkstring[128];
- if(sscanf(params, "s[15]S(None)[15]S(None)[40]", Method, Item, Amount)) return SysMsg(playerid,"Use: /portamalas [abrir/fechar/pegar/guardar/mostrar] [item] [quantidade], Itens: Dinheiro, colete, maconha, cocaina, moonshine, arma");
- if(TrunkXY(playerid, tempv) || GetPlayerVehicleID(playerid) == tempv)
- {
- if(strmatch("abrir", Method))
- {
- if(VehicleBoots[tempv][1] == 1) return SysMsg(playerid,"O porta-malas já esta aberto.");
- if(IsOwnedCar(tempv))
- {
- if(Locked{tempv})
- {
- format(trunkstring, sizeof(trunkstring), "* %s tenta abrir o porta-malas do %s. *", NameRP(playerid), GetVehicleNameEx(VehicleData[tempv][VehicleModel]));
- ProxDetector(20.0,playerid,trunkstring, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SysMsg(playerid,"O veiculo está fechado, se você quiser abrir o porma-malas, você precisa abrir o veiculo primeiro.");
- return true;
- }
- }
- else if(IsFactionVehicle(tempv))
- {
- if(Locked{tempv})
- {
- format(trunkstring, sizeof(trunkstring), "* %s tenta abrir o porta-malas do %s. *", NameRP(playerid), GetVehicleNameEx(FVehicleData[tempv][FVModel]));
- ProxDetector(20.0,playerid,trunkstring, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SysMsg(playerid, "O veiculo está fechado, se você quiser abrir o porma-malas, você precisa abrir o veiculo primeiro.");
- return true;
- }
- }
- if(!IsPlayerInAnyVehicle(playerid)) ToggleVehicleTrunk(tempv, 1);
- VehicleBoots[tempv][1] = 1;
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- format(trunkstring, sizeof(trunkstring),"* %s preciona um botão dentro do veiculo e abre o porta-malas. *", NameRP(playerid));
- ProxDetector(20.0,playerid,trunkstring, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(VehicleBoots[tempv][1] == 1)
- {
- if(strmatch("fechar", Method))
- {
- if(VehicleBoots[tempv][1] == 0) return SysMsg(playerid,"O porta-malas do veiculo já esta fechado.");
- ToggleVehicleTrunk(tempv, 0);
- VehicleBoots[tempv][1] = 0;
- format(trunkstring, sizeof(trunkstring),"* %s grips the trunk, closing it. *",NameRP(playerid));
- ProxDetector(20.0,playerid,trunkstring, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- if(strcmp("guardar",Method) == 0)
- {
- if(strmatch(Item, "None")) return SysMsg(playerid,"Use: /portamalas guardar [item] [quantidade(nome da arma)], Itens: Dinheiro, Colete, Marijuana, cocaina, moonshine, arma");
- if(strcmp("dinheiro",Item) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas guardar dinheiro [quantidade $]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(strval(Amount) < 1 || strval(Amount) > 100000) return SysMsg(playerid,"A quantidade máxima de dinheiro que você pode guardar é de $100,000.");
- if(strval(Amount) > Cash[playerid]) return SysMsg(playerid,"Você não tem essa quantidade para guardar.");
- GivePlayerCash(playerid, -strval(Amount));
- if(IsOwnedCar(tempv))
- {
- VehicleData[tempv][TrunkCash] += strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkCash", VehicleData[tempv][TrunkCash], "vehicles");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- else if(IsFactionVehicle(tempv))
- {
- FVehicleData[tempv][FTrunkCash] += strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkCash", FVehicleData[tempv][FTrunkCash], "fveh");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- format(trunkstring, sizeof(trunkstring),"Você guardou $%s no porta-malas do veiculo.",format_cash(strval(Amount)));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"[%s] %s(%i) guarda $%i no porta-malas do veiculo.", GetServerTimeString(), NameEx(playerid), playerid, strval(Amount));
- AddToLog("cash", trunkstring);
- return true;
- }
- else if(strcmp("colete",Item,true) == 0 || strcmp("coletes",Item,true) == 0)
- {
- new Float:Armour;
- GetPlayerArmour(playerid,Armour);
- if(Armour == 0) return SysMsg(playerid, "Você não tem colete de proteção.");
- //if(VestType[playerid] == 0) return SysMsg(playerid, "You do not have an armor vest on.");
- if(IsOwnedCar(tempv))
- {
- if(RestrictedVest{playerid}) return SysMsg(playerid, "Você não pode armazenar este colete neste veículo.");
- if(!MySQLCheckVehicleArmor(VehicleData[tempv][VehSQLID])) return SysMsg(playerid, "Você não pode armazenar mais coletes neste veículo como já tem 5 coletes.");
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO storedarmor (ArmorType, ArmorAmount, TrunkID) VALUES (%i, %f, %i)", VestType[playerid], Armour, VehicleData[tempv][VehSQLID]);
- mysql_pquery(conn, mquery);
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- else if(IsFactionVehicle(tempv))
- {
- if(RestrictedVest{playerid} && IsFactionVehicle(FVehicleData[tempv][FactionVehID]) != Faction[playerid]) return SysMsg(playerid, "Você não pode armazenar este colete neste veículo.");
- if(!MySQLCheckFVehArmor(FVehicleData[tempv][FVSQLID])) return SysMsg(playerid, "Você não pode armazenar mais coletes neste veículo como já tem 5 coletes.");
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO storedarmor (ArmorType, ArmorAmount, FCarID) VALUES (%i, %f, %i)", VestType[playerid], Armour, FVehicleData[tempv][FVSQLID]);
- mysql_pquery(conn, mquery);
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- ApplyTrunkAnimation(playerid);
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- if(VestType[playerid] == 1) SendClientMessage(playerid,COLOR_DARKBLUE,"Você guardou um colete leve no porta-malas deste veiculo.");
- else SendClientMessage(playerid, COLOR_DARKBLUE, "Você armazenou um colete pesado no porta-malas deste veiculo.");
- SetPlayerArmourEx(playerid, 0.0, 1);
- VestType[playerid] = 0;
- return true;
- }
- else if(strcmp("marijuana",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas guardar marijuana [Quantidade]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(strval(Amount) < 1) return SysMsg(playerid,"Você deve armazenar pelo menos 1.");
- if(strval(Amount) > Inventory[playerid][Weed]) return SysMsg(playerid,"Você não tem essa quantidade para guardar.");
- Inventory[playerid][Weed] -= strval(Amount);
- MySQLUpdateInt(SQLID[playerid], "Weed", Inventory[playerid][Weed], "players");
- if(IsOwnedCar(tempv))
- {
- VehicleData[tempv][TrunkWeed] += strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkWeed", VehicleData[tempv][TrunkWeed], "vehicles");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- else if(IsFactionVehicle(tempv))
- {
- FVehicleData[tempv][FTrunkWeed] += strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkWeed", FVehicleData[tempv][FTrunkWeed], "fveh");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"Guarda %i gramas de Marijuana no porta-malas do veiculo.",strval(Amount));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- return true;
- }
- else if(strcmp("Cocaina",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas guardar Cocaina [Quantidade]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(strval(Amount) < 1) return SysMsg(playerid,"You must store at least 1.");
- if(strval(Amount) > Inventory[playerid][Cocaine]) return SysMsg(playerid,"Você não tem essa quantidade para guardar.");
- Inventory[playerid][Cocaine] -= strval(Amount);
- MySQLUpdateInt(SQLID[playerid], "Cocaine", Inventory[playerid][Cocaine], "players");
- if(IsOwnedCar(tempv))
- {
- VehicleData[tempv][TrunkCocaine] += strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkCocaine", VehicleData[tempv][TrunkCocaine], "vehicles");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- else if(IsFactionVehicle(tempv))
- {
- FVehicleData[tempv][FTrunkCocaine] += strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkCocaine", FVehicleData[tempv][FTrunkCocaine], "fveh");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"Você guardou %i gramas de cocaina no porta-malas do veiculo.",strval(Amount));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- return true;
- }
- else if(strcmp("MoonShine",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas guardar MoonShine [Quantidade]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(strval(Amount) < 1) return SysMsg(playerid,"Você deve armazenar pelo menos 1.");
- if(strval(Amount) > Inventory[playerid][MoonShine]) return SysMsg(playerid,"Você não tem essa quantidade para armazenar.");
- Inventory[playerid][MoonShine] -= strval(Amount);
- MySQLUpdateInt(SQLID[playerid], "MoonShine", Inventory[playerid][MoonShine], "players");
- if(IsOwnedCar(tempv))
- {
- VehicleData[tempv][TrunkMoonShine] += strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkMoonShine", VehicleData[tempv][TrunkMoonShine], "vehicles");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- else if(IsFactionVehicle(tempv))
- {
- FVehicleData[tempv][FTrunkMoonShine] += strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkMoonShine", FVehicleData[tempv][FTrunkMoonShine], "fveh");
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- }
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"Você guardou %i litros de Moon Shine no porta-malas de veiculo.",strval(Amount));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- return true;
- }
- else if(strcmp("arma",Item,true) == 0 || strcmp("armas",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas guardar Armas [Nome da arma]");
- new wid = GetWeaponIdFromName(Amount);
- if(wid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(wid < 1 || wid > 47) return SysMsg(playerid,"Arma inválida.");
- if(wid == 19 || wid == 20 || wid == 21) return SysMsg(playerid,"Arma inválida.");
- new Slot = GetWeaponSlot(wid);
- if(HasTaser{playerid} && Slot == 2) return SysMsg(playerid, "Você não pode armazenar Taser.");
- if(WeaponData[playerid][Slot][Weapon] != wid) return SysMsg(playerid,"Você não tem essa arma.");
- if(WeaponData[playerid][Slot][WeaponOrigin] == 3 && FVehicleData[tempv][FVFaction] != Faction[playerid]) return SysMsg(playerid, "Você não pode guardar armas de facção em um veiculo que não é de sua facção");
- if(IsOwnedCar(tempv))
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM weapons WHERE TrunkID = %i AND Deleted = 0 AND Dropped = 0", VehicleData[tempv][VehSQLID]);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows() >= GetVehicleTrunkLimit(VehicleData[tempv][IdVehicle])) return SysMsg(playerid, "Não há mais espaço nesse porta-malas.") && cache_delete(result);
- cache_delete(result);
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET TrunkID = %i, WeaponPossession = 0, WeaponAmmo = %i WHERE id = %i", VehicleData[tempv][VehSQLID], WeaponData[playerid][Slot][WeaponAmmo], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- ResetWeaponVariables(playerid, 0, Slot);
- }
- else if(IsFactionVehicle(tempv))
- {
- if(WeaponData[playerid][Slot][WeaponOrigin] == 3 && IsFactionVehicle(FVehicleData[tempv][FactionVehID]) != Faction[playerid]) return SysMsg(playerid, "Você não pode guardar armas de facção em um veiculo que não é de sua facção");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM weapons WHERE FCarID = %i AND Gunrack = -1 AND Deleted = 0 AND Dropped = 0", FVehicleData[tempv][FVSQLID]);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows() >= GetVehicleTrunkLimit(FVehicleData[tempv][FactionVehID])) return SysMsg(playerid, "Não há mais espaço nesse porta-malas.") && cache_delete(result);
- cache_delete(result);
- format(trunkstring, sizeof(trunkstring),"* %s guarda alguma coisa no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET FCarID = %i, WeaponPossession = 0, WeaponAmmo = %i WHERE id = %i", FVehicleData[tempv][FVSQLID], WeaponData[playerid][Slot][WeaponAmmo], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- ResetWeaponVariables(playerid, 0, Slot);
- }
- ResetWeaponVariables(playerid, 0, Slot);
- SyncPlayerWeapons(playerid);
- if(wid == 2) UnlockAchievement(playerid, 35);
- ApplyTrunkAnimation(playerid);
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- format(trunkstring, sizeof(trunkstring),"Você guardou um celular %s no porta-malas deste veiuclo.",GetWeaponNameFromID(wid));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- return true;
- }
- else if(strcmp("celular", Item, true) == 0)
- {
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid, "Você precisa ter um celular para guardar.");
- if(IsPhoneRinging[playerid] == 1) return SysMsg(playerid,"Você não pode guardar um celular tocando.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você não pode guardar um celular se ainda estiver usando ele.");
- new phoneid = PhoneData[playerid][pID];
- if(IsFactionVehicle(tempv))
- {
- FVehicleData[tempv][FTrunkPhone] = phoneid;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE fveh SET TrunkPhone = %i WHERE id = %i", phoneid, FVehicleData[tempv][FVSQLID]);
- mysql_tquery(conn, mquery);
- }
- else
- {
- VehicleData[tempv][TrunkPhone] = phoneid;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET TrunkPhone = %i WHERE id = %i", phoneid, VehicleData[tempv][VehSQLID]);
- mysql_tquery(conn, mquery);
- }
- ClearPhoneData(playerid);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossession = 0 WHERE id = %i", phoneid);
- mysql_tquery(conn, mquery);
- format(trunkstring, sizeof(trunkstring),"* %s guarda um celular no porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- ApplyTrunkAnimation(playerid);
- SendClientMessage(playerid,COLOR_DARKBLUE,"Você guardou um celular no porta-malas do veiculo.");
- return true;
- }
- }
- else if(strcmp("pegar",Method,true) == 0)
- {
- if(strmatch(Item, "None")) return SysMsg(playerid,"Use: /portamalas pegar [item] [quantidade(nome da arma)], Itens: dinheiro, colete, marijuana, cocaina, moonshine, arma");
- if(strcmp("dinheiro",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas pegar dinheiro [Quantidade $]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(strval(Amount) < 1 || strval(Amount) > 100000) return SysMsg(playerid,"Você pode pegar no máximo $100,000.");
- if(IsOwnedCar(tempv))
- {
- if(strval(Amount) > VehicleData[tempv][TrunkCash]) return SysMsg(playerid,"Esse veiculo não tem essa quantidade de dinheiro no porta-malas.");
- VehicleData[tempv][TrunkCash] -= strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkCash", VehicleData[tempv][TrunkCash], "vehicles");
- }
- else if(IsFactionVehicle(tempv))
- {
- if(strval(Amount) > FVehicleData[tempv][FTrunkCash]) return SysMsg(playerid,"Esse veiculo não tem essa quantidade de dinheiro no porta-malas.");
- FVehicleData[tempv][FTrunkCash] -= strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkCash", FVehicleData[tempv][FTrunkCash], "fveh");
- }
- GivePlayerCash(playerid, strval(Amount));
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"Você pegou $%s do porta-malas do veiculo.",format_cash(strval(Amount)));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- format(trunkstring, sizeof(trunkstring),"* %s pegou alguma coisa do porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- format(trunkstring, sizeof(trunkstring),"[%s] %s(%i) pegou $%i do porta-malas.", GetServerTimeString(), NameEx(playerid), playerid, strval(Amount));
- AddToLog("cash", trunkstring);
- }
- else if(strcmp("colete",Item,true) == 0 || strcmp("coletes",Item,true) == 0)
- {
- if(IsOwnedCar(tempv))
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id, ArmorType, ArmorAmount FROM storedarmor WHERE TrunkID = %i", VehicleData[tempv][VehSQLID]);
- mysql_pquery(conn, mquery, "ShowStoredArmor", "dd", playerid, 2);
- }
- else if(IsFactionVehicle(tempv) && IsGovTrunk(tempv))
- {
- if(HasGovTrunkAccess(playerid, tempv))
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id, ArmorType, ArmorAmount FROM storedarmor WHERE FCarID = %i", FVehicleData[tempv][FVSQLID]);
- mysql_pquery(conn, mquery, "ShowStoredArmor", "dd", playerid, 2);
- }
- else return SysMsg(playerid, "Você não pode pegar colete de veiculos do governo.");
- }
- else if(IsFactionVehicle(tempv) && !IsGovTrunk(tempv))
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id, ArmorType, ArmorAmount FROM storedarmor WHERE FCarID = %i", FVehicleData[tempv][FVSQLID]);
- mysql_pquery(conn, mquery, "ShowStoredArmor", "dd", playerid, 2);
- }
- }
- else if(strcmp("arma",Item,true) == 0 || strcmp("armas",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas Pegar Arma [Nome da arma]");
- new wid = GetWeaponIdFromName(Amount);
- if(wid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(wid < 1 || wid > 47) return SysMsg(playerid,"Arma inválida.");
- if(wid == 19 || wid == 20 || wid == 21) return SysMsg(playerid,"Arma inválida.");
- new Slot = GetWeaponSlot(wid);
- if(WeaponData[playerid][Slot][Weapon] != 0) return SysMsg(playerid,"Você já possui uma arma desse tipo.");
- if(IsOwnedCar(tempv))
- {
- if(VehicleData[tempv][VehSQLID] >= 1)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM weapons WHERE TrunkID = %i AND WeaponID = %i AND Deleted = 0 AND FCarID = -1 AND Gunrack = -1 AND WeaponPossession = 0 AND HouseID = -1 AND Dropped = 0", VehicleData[tempv][VehSQLID], wid);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows() == 0)
- {
- SysMsg(playerid, "Essa arma não esta em seu porta-malas.");
- cache_delete(result);
- return true;
- }
- else
- {
- WeaponData[playerid][Slot][WeaponID] = cache_get_field_content_int(0, "id");
- WeaponData[playerid][Slot][WeaponTimestamp] = cache_get_field_content_int(0, "Timestamp");
- WeaponData[playerid][Slot][wCreatorSQLID] = cache_get_field_content_int(0, "CreatorSQLID");
- WeaponData[playerid][Slot][Weapon] = cache_get_field_content_int(0, "WeaponID");
- WeaponData[playerid][Slot][wOwnerSQLID] = cache_get_field_content_int(0, "OwnerSQLID");
- WeaponData[playerid][Slot][WeaponAmmo] = cache_get_field_content_int(0, "WeaponAmmo");
- WeaponData[playerid][Slot][WeaponType] = GetWeaponType(WeaponData[playerid][Slot][Weapon]);
- WeaponData[playerid][Slot][WeaponOrigin] = cache_get_field_content_int(0, "WeaponOrigin");
- WeaponData[playerid][Slot][WeaponPossession] = cache_get_field_content_int(0, "WeaponPossession");
- }
- cache_delete(result);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET TrunkID = -1, WeaponPossession = 1, OwnerSQLID = %i WHERE id = %i", SQLID[playerid], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- }
- else return SysMsg(playerid, "Ocorreu um Erro, contate um admin.");
- }
- else if(IsFactionVehicle(tempv) && IsGovTrunk(tempv))
- {
- if(HasGovTrunkAccess(playerid, tempv))
- {
- if(FVehicleData[tempv][FVSQLID] >= 1)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM weapons WHERE FCarID = %i AND Gunrack = -1 AND WeaponID = %i AND Deleted = 0 AND TrunkID = -1 AND WeaponPossession = 0 AND HouseID = -1 AND Dropped = 0", FVehicleData[tempv][FVSQLID], wid);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows() == 0)
- {
- SysMsg(playerid, "Essa arma não esta em seu porta-malas.");
- cache_delete(result);
- return true;
- }
- else
- {
- WeaponData[playerid][Slot][WeaponID] = cache_get_field_content_int(0, "id");
- WeaponData[playerid][Slot][WeaponTimestamp] = cache_get_field_content_int(0, "Timestamp");
- WeaponData[playerid][Slot][wCreatorSQLID] = cache_get_field_content_int(0, "CreatorSQLID");
- WeaponData[playerid][Slot][Weapon] = cache_get_field_content_int(0, "WeaponID");
- WeaponData[playerid][Slot][wOwnerSQLID] = cache_get_field_content_int(0, "OwnerSQLID");
- WeaponData[playerid][Slot][WeaponAmmo] = cache_get_field_content_int(0, "WeaponAmmo");
- WeaponData[playerid][Slot][WeaponType] = GetWeaponType(WeaponData[playerid][Slot][Weapon]);
- WeaponData[playerid][Slot][WeaponOrigin] = cache_get_field_content_int(0, "WeaponOrigin");
- WeaponData[playerid][Slot][WeaponPossession] = cache_get_field_content_int(0, "WeaponPossession");
- }
- cache_delete(result);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET FCarID = -1, WeaponPossession = 1, OwnerSQLID = %i WHERE id = %i", SQLID[playerid], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- }
- else return SysMsg(playerid, "Ocorreu um Erro, contate um admin.");
- }
- else return SysMsg(playerid, "Você não pode pegar armas de porta-malas de veiculos do governo.");
- }
- else if(IsFactionVehicle(tempv) && !IsGovTrunk(tempv))
- {
- if(FVehicleData[tempv][FVSQLID] >= 1)
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM weapons WHERE FCarID = %i AND Gunrack = -1 AND WeaponID = %i AND Deleted = 0 AND TrunkID = -1 AND WeaponPossession = 0 AND HouseID = -1 AND Dropped = 0", FVehicleData[tempv][FVSQLID], wid);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows() == 0)
- {
- SysMsg(playerid, "Essa arma não esta em seu porta-malas.");
- cache_delete(result);
- return true;
- }
- else
- {
- WeaponData[playerid][Slot][WeaponID] = cache_get_field_content_int(0, "id");
- WeaponData[playerid][Slot][WeaponTimestamp] = cache_get_field_content_int(0, "Timestamp");
- WeaponData[playerid][Slot][wCreatorSQLID] = cache_get_field_content_int(0, "CreatorSQLID");
- WeaponData[playerid][Slot][Weapon] = cache_get_field_content_int(0, "WeaponID");
- WeaponData[playerid][Slot][wOwnerSQLID] = cache_get_field_content_int(0, "OwnerSQLID");
- WeaponData[playerid][Slot][WeaponAmmo] = cache_get_field_content_int(0, "WeaponAmmo");
- WeaponData[playerid][Slot][WeaponType] = GetWeaponType(WeaponData[playerid][Slot][Weapon]);
- WeaponData[playerid][Slot][WeaponOrigin] = cache_get_field_content_int(0, "WeaponOrigin");
- WeaponData[playerid][Slot][WeaponPossession] = cache_get_field_content_int(0, "WeaponPossession");
- }
- cache_delete(result);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET FCarID = -1, WeaponPossession = 1, OwnerSQLID = %i WHERE id = %i", SQLID[playerid], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- }
- else return SysMsg(playerid, "Ocorreu um Erro, contate um admin.");
- }
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"Você pegou uma %s do porta-malas do %s.",GetWeaponNameFromID(wid),GetVehicleName(tempv));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- format(trunkstring, sizeof(trunkstring),"* %s pegou alguma coisa do porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- SyncPlayerWeapons(playerid);
- return true;
- }
- else if(strcmp("Marijuana",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas Pega Marijuana [Quantidade]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(IsOwnedCar(tempv))
- {
- if(strval(Amount) < 1 || strval(Amount) > VehicleData[tempv][TrunkWeed]) return SysMsg(playerid,"Você deve ter pelo menos 1 e não mais do que o que está no porta-malas.");
- if(Inventory[playerid][Weed] + strval(Amount) > DRUG_MAX_WEED) return SysMsg(playerid,"Você não pode carregar essa quantidade de Marijuana.");
- VehicleData[tempv][TrunkWeed] -= strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkWeed", VehicleData[tempv][TrunkWeed], "vehicles");
- }
- else if(IsFactionVehicle(tempv))
- {
- if(strval(Amount) < 1 || strval(Amount) > FVehicleData[tempv][FTrunkWeed]) return SysMsg(playerid,"Você deve ter pelo menos 1 e não mais do que o que está no porta-malas.");
- if(Inventory[playerid][Weed] + strval(Amount) > DRUG_MAX_WEED) return SysMsg(playerid,"Você não pode carregar essa quantidade de Marijuana.");
- FVehicleData[tempv][FTrunkWeed] -= strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkWeed", FVehicleData[tempv][FTrunkWeed], "fveh");
- }
- Inventory[playerid][Weed] += strval(Amount);
- MySQLUpdateInt(SQLID[playerid], "Weed", Inventory[playerid][Weed], "players");
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"Você pegou %i gramas de Marijuana do porta-malas.",strval(Amount));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- format(trunkstring, sizeof(trunkstring),"* %s pegou alguma coisa do porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- return true;
- }
- else if(strcmp("Cocaina",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas pegar Cocaina [Quantidade]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(IsOwnedCar(tempv))
- {
- if(strval(Amount) < 1 || strval(Amount) > VehicleData[tempv][TrunkCocaine]) return SysMsg(playerid,"Você deve ter pelo menos 1 e não mais do que o que está no porta-malas.");
- if(Inventory[playerid][Cocaine] + strval(Amount) > DRUG_MAX_COCAINE) return SysMsg(playerid,"Você não pode carregar muita cocaína.");
- VehicleData[tempv][TrunkCocaine] -= strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkCocaine", VehicleData[tempv][TrunkCocaine], "vehicles");
- }
- else if(IsFactionVehicle(tempv))
- {
- if(strval(Amount) < 1 || strval(Amount) > FVehicleData[tempv][FTrunkCocaine]) return SysMsg(playerid,"Você deve ter pelo menos 1 e não mais do que o que está no porta-malas.");
- if(Inventory[playerid][Cocaine] + strval(Amount) > DRUG_MAX_COCAINE) return SysMsg(playerid,"Você não pode carregar muita cocaína.");
- FVehicleData[tempv][FTrunkCocaine] -= strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkCocaine", FVehicleData[tempv][FTrunkCocaine], "fveh");
- }
- Inventory[playerid][Cocaine] += strval(Amount);
- MySQLUpdateInt(SQLID[playerid], "Cocaine", Inventory[playerid][Cocaine], "players");
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"Você pegou %i gramas de Cocaina do porta-malas do veiculo.",strval(Amount));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- format(trunkstring, sizeof(trunkstring),"* %s pegou alguma coisa do porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- return true;
- }
- else if(strcmp("MoonShine",Item,true) == 0)
- {
- if(strmatch(Amount, "None")) return SysMsg(playerid,"Use: /portamalas pegar Moonshine [Quantidade]");
- if(!IsNumeric(Amount)) return SysMsg(playerid,"Quantidade inválida.");
- if(IsOwnedCar(tempv))
- {
- if(strval(Amount) < 1 || strval(Amount) > VehicleData[tempv][TrunkMoonShine]) return SysMsg(playerid,"Você deve ter pelo menos 1 e não mais do que o que está no porta-malas.");
- if(Inventory[playerid][MoonShine] + strval(Amount) > DRUG_MAX_MOONSHINE) return SysMsg(playerid,"Você não pode carregar mooonshine.");
- VehicleData[tempv][TrunkMoonShine] -= strval(Amount);
- MySQLUpdateInt(VehicleData[tempv][VehSQLID], "TrunkMoonShine", VehicleData[tempv][TrunkMoonShine], "vehicles");
- }
- else if(IsFactionVehicle(tempv))
- {
- if(strval(Amount) < 1 || strval(Amount) > FVehicleData[tempv][FTrunkMoonShine]) return SysMsg(playerid,"Você deve ter pelo menos 1 e não mais do que o que está no porta-malas.");
- if(Inventory[playerid][MoonShine] + strval(Amount) > DRUG_MAX_MOONSHINE) return SysMsg(playerid,"Você não pode carregar mooonshine.");
- FVehicleData[tempv][FTrunkMoonShine] -= strval(Amount);
- MySQLUpdateInt(FVehicleData[tempv][FVSQLID], "TrunkMoonShine", FVehicleData[tempv][FTrunkMoonShine], "fveh");
- }
- Inventory[playerid][MoonShine] += strval(Amount);
- MySQLUpdateInt(SQLID[playerid], "MoonShine", Inventory[playerid][MoonShine], "players");
- ApplyTrunkAnimation(playerid);
- format(trunkstring, sizeof(trunkstring),"You have got %i litro(s) de MoonShine from the trunk.",strval(Amount));
- SendClientMessage(playerid,COLOR_DARKBLUE,trunkstring);
- format(trunkstring, sizeof(trunkstring),"* %s pegou alguma coisa do porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- return true;
- }
- else if(strcmp("Celular", Item, true) == 0)
- {
- if(Inventory[playerid][MobilePhone] == 1) return SysMsg(playerid, "Você já tem um celular em seu inventário.");
- new phoneid;
- if(IsFactionVehicle(tempv))
- {
- if(FVehicleData[tempv][FTrunkPhone] == 0) return SysMsg(playerid, "Não há nenhum celular guardado nesse veiculo.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossession = 1, PhonePossessor = %i WHERE id = %i", SQLID[playerid], FVehicleData[tempv][FTrunkPhone]);
- mysql_tquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE fveh SET TrunkPhone = 0 WHERE id = %i", FVehicleData[tempv][FVSQLID]);
- mysql_tquery(conn, mquery);
- FVehicleData[tempv][FTrunkPhone] = 0;
- }
- if(IsOwnedCar(tempv))
- {
- if(VehicleData[tempv][TrunkPhone] == 0) return SysMsg(playerid, "Não há nenhum celular guardado nesse veiculo.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossession = 1, PhonePossessor = %i WHERE id = %i", SQLID[playerid], VehicleData[tempv][TrunkPhone]);
- mysql_tquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET TrunkPhone = 0 WHERE id = %i", VehicleData[tempv][VehSQLID]);
- mysql_tquery(conn, mquery);
- VehicleData[tempv][TrunkPhone] = 0;
- }
- ApplyTrunkAnimation(playerid);
- SendClientMessage(playerid,COLOR_DARKBLUE,"Você pegou um celular do porta-malas do veiculo.");
- format(trunkstring, sizeof(trunkstring),"* %s pega um celular do porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- SetPlayerChatBubble(playerid, trunkstring, COLOR_EMOTE, 15.0, 5000);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM phones WHERE id = %i AND PhonePossession = 1", phoneid);
- mysql_tquery(conn, mquery, "LoadPlayerPhone", "d", playerid);
- return true;
- }
- }
- else if(strcmp("mostrar",Method,true) == 0)
- {
- if(IsOwnedCar(tempv))
- {
- SendClientMessageF(playerid,COLOR_DARKBLUE, "[Porta-malas] Dinheiro: $%s | Marijuana: %ig | Cocaina: %ig | MoonShine: %i L.", format_cash(VehicleData[tempv][TrunkCash]), VehicleData[tempv][TrunkWeed], VehicleData[tempv][TrunkCocaine], VehicleData[tempv][TrunkMoonShine]);
- SendClientMessage(playerid,COLOR_DARKBLUE, "[Porta-malas] Weapons: Use /portamalas verarmas | Colete: use /portamalas pegar colete.");
- if(VehicleData[tempv][TrunkPhone] >= 1) SendClientMessageF(playerid, COLOR_DARKBLUE, "Não há nenhum celular guardado nesse veiculo.");
- }
- else if(IsFactionVehicle(tempv))
- {
- SendClientMessageF(playerid,COLOR_DARKBLUE, "[Porta-malas] Dinheiro: $%s | Marijuana: %ig | Cocaina: %ig | MoonShine: %i L.", format_cash(FVehicleData[tempv][FTrunkCash]), FVehicleData[tempv][FTrunkWeed], FVehicleData[tempv][FTrunkCocaine], FVehicleData[tempv][FTrunkMoonShine]);
- SendClientMessage(playerid,COLOR_DARKBLUE, "[Porta-malas] Armas: Use /portamalas verarmas | Colete: use /portamalas pegar colete.");
- if(FVehicleData[tempv][FTrunkPhone] >= 1) SendClientMessageF(playerid, COLOR_DARKBLUE, "Não há nenhum celular guardado nesse veiculo.");
- }
- format(trunkstring, sizeof(trunkstring),"* %s olha para dentro do porta-malas do %s. *",NameRP(playerid),GetVehicleName(tempv));
- ProxDetector(15.0,playerid,trunkstring, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else if(strcmp("verarmas",Method,true) == 0)//viewguns
- {
- if(IsOwnedCar(tempv)) mysql_format(conn, mquery, sizeof(mquery), "SELECT id,WeaponID,WeaponAmmo FROM weapons WHERE TrunkID = %i AND Deleted = 0 AND WeaponPossession = 0 AND HouseID = -1 AND Gunrack = -1 AND FCarID = -1 AND Dropped = 0", VehicleData[tempv][VehSQLID]);
- else mysql_format(conn, mquery, sizeof(mquery), "SELECT id,WeaponID,WeaponAmmo FROM weapons WHERE FCarID = %i AND Gunrack = -1 AND Deleted = 0 AND WeaponPossession = 0 AND TrunkID = -1 AND HouseID = -1 AND Dropped = 0", FVehicleData[tempv][FVSQLID]);
- mysql_pquery(conn, mquery, "ShowTrunkGuns", "d", playerid);
- return true;
- }
- }
- else SysMsg(playerid, "Use: /portamalas [abrir/fechar/pegar/guardar/mostrar] [item] [quantidade], Itens: Dinheiro, colete, maconha, cocaina, moonshine, arma");
- }
- return true;
- }
- CMD:veiculodonate(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new rewardCarModel;
- MySQLFetchInt(SQLID[playerid], "DonationCarModel", rewardCarModel, "players");
- if(rewardCarModel == 0) return SysMsg(playerid, "Você não tem um veiculo donate.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM vehicles WHERE OwnerSQLID = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "ProcessDonationVehicle", "dd", playerid, rewardCarModel);
- return true;
- }
- CMD:mudarevdonate(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid, "Use: /mudarevdonate [veiculo model ou nome]");
- if(IsDonator[playerid] < 3) return SysMsg(playerid, "Você precisa ser Donate level 3 ou 4.");
- new vehicleid = GetPlayerVehicleID(playerid);
- if(vehicleid == 0) return SysMsg(playerid,"Você não estar em nenhum veiculo.");
- if(vehicleid == VehicleData[vehicleid][IdVehicle] && VehicleData[vehicleid][DonatorCar] && VehicleData[vehicleid][VehicleOwnerSQLID] == SQLID[playerid])
- {
- new Car = GetVehicleModelIdFromName(params);
- if(Car == -1)
- {
- Car = strval(params);
- if(Car < 400 || Car > 611) return SysMsg(playerid, "Veiculo ID inválido.");
- }
- mysql_format(conn, mquery, sizeof(mquery), "SELECT NextChangable FROM vehicles WHERE id = %i LIMIT 1", VehicleData[vehicleid][VehSQLID]);
- mysql_pquery(conn, mquery, "SetCDV", "ddd", playerid, Car, vehicleid);
- return true;
- }
- else SysMsg(playerid,"Você não é dono de um veiculo de Donate.");
- return true;
- }
- CMD:mod(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro do veiculo.");
- new bodyshop = -1, v = GetPlayerVehicleID(playerid);
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(bodyshop == -1) return SysMsg(playerid, "Você deve estar na garagem de Fort Carson ou Palomino Creek para modificar seu veículo.");
- if(VehicleData[v][Hotwired] == 1) return SysMsg(playerid, "Você não pode modificar um veículo roubado.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você deve ser o motorista do veículo.");
- if(IsHelicopter(v) || IsPlane(v) || IsBoat(v) || IsBike(v)) return SysMsg(playerid,"Você não pode modificar helicópteros, barcos, bicicletas ou aviões.");
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Você deve ser dono do veículo para modificá-lo.");
- if(aspawned{v}) return SysMsg(playerid, "Você não pode modificar veiculos Admin. Se você estiver usando este veículo sem autorização, por favor, chame um administrador ou ajudante para removê-lo.");
- new Float:health;
- GetVehicleHealth(v, health);
- if(health <= 950) return SysMsg(playerid, "O seu veículo deve estar em boas condições para ser modificado.");
- Dialog_Show(playerid, vModSelect, DIALOG_STYLE_MSGBOX, "Mod para veiculos", "Selecione o tipo de mod que você gostaria de adicionar ao seu veículo", "Lataria", "Rodas");
- return true;
- }
- CMD:paintjob(playerid, params[])//observar
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro do veiculo.");
- new bodyshop = -1, v = GetPlayerVehicleID(playerid);
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[1])) bodyshop = 2; //dillimore
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(IsPlayerInDynamicArea(playerid, GarageAreas[3])) bodyshop = 4; //el q
- if(IsPlayerInDynamicArea(playerid, GarageAreas[6])) bodyshop = 5; //angel pine
- if(bodyshop == -1) return SysMsg(playerid,"Você não esta em nenhuma garagem de reparação.");
- if(VehicleData[v][Hotwired] == 1) return SysMsg(playerid, "Você não pode modificar um veículo roubado.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você deve ser o motorista do veículo.");
- if(IsHelicopter(v) || IsPlane(v) || IsBoat(v) || IsBike(v)) return SysMsg(playerid,"Você não pode modificar helicópteros, barcos, bicicletas ou aviões.");
- if(bodyshop == 5 && (!IsHelicopter(v) && !IsPlane(v))) return SysMsg(playerid,"Você não pode modificar este veiculo nesta garagem.");
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Você deve ser dono do veículo para modificá-lo.");
- if(aspawned{v}) return SysMsg(playerid, "Você não pode modificar um veiculo spawnado por adminstrador.");
- new Float:health;
- GetVehicleHealth(v, health);
- if(health <= 950) return SysMsg(playerid, "Seu veículo deve estar em boas condições para ser modificado.");
- if(!IsNumeric(params)) return SysMsg(playerid, "Use: /paintjob [0-3] *0 irá remover qualquer pintura seu veículo tem.*");
- new paintjob = strval(params);
- if(paintjob < 0 || paintjob > 3) return SysMsg(playerid, "Pintura deve ser 0-3.");
- if(!IsSuitablePaintjobCar(v)) SendSplitMessage(playerid, COLOR_RED, "Nota: Seu veículo atual não suporta pinturas. Você tem mod que não suporta pintura.");
- if(paintjob != 0)
- {
- PendingPaintjob[playerid] = paintjob - 1;
- ChangeVehiclePaintjob(v, paintjob - 1);
- SendClientMessage(playerid, COLOR_WHITE, "Você adicionou uma nova "COL_NICEGREEN"pintura{FFFFFF} para sua lista de modificações.");
- }
- else
- {
- ChangeVehiclePaintjob(v, 3);
- VehicleData[v][VehiclePaintjob] = 3;
- SavePlayerVehicles(playerid, 0);
- PendingPaintjob[playerid] = -1;
- SendClientMessage(playerid, COLOR_WHITE, "Você removeu o "COL_NICERED"pintura{FFFFFF} do seu veiculo.");
- }
- return true;
- }
- CMD:limparmods(playerid, params[])//limparmods
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro do veiculo.");
- new bodyshop = -1, v = GetPlayerVehicleID(playerid);
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[1])) bodyshop = 2; //dillimore
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(IsPlayerInDynamicArea(playerid, GarageAreas[3])) bodyshop = 4; //el q
- if(bodyshop == -1) return SysMsg(playerid, "Você deve estar perto de uma garagem.");
- new modcount = 0;
- for(new x = 0; x < 14; x++) if(ModQueue[playerid][x] >= 1) modcount ++;
- if(PendingPaintjob[playerid] != -1) modcount ++;
- if(modcount == 0) return SysMsg(playerid, "Você não possui nenhuma instalação de mods no veiculo.");
- new component;
- for(new x = 0; x < 14; x++) //removes pending components from the vehicle and then re-adds saved mods
- {
- component = GetVehicleComponentInSlot(v, x);
- if(component != 0) RemoveVehicleComponent(v, component);
- if(VehicleData[v][VehicleMod][x] && IsVehicleUpgradeCompatible(VehicleData[v][VehicleModel], VehicleData[v][VehicleMod][x]))
- {
- AddVehicleComponent(VehicleData[v][IdVehicle], VehicleData[v][VehicleMod][x]);
- }
- ModQueue[playerid][x] = 0;
- }
- if(PendingPaintjob[playerid] != -1) ChangeVehiclePaintjob(v, 3);
- PendingPaintjob[playerid] = -1;
- return true;
- }
- CMD:comprarmods(playerid, params[])//comprarmods
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro do veiculo.");
- new bodyshop = -1, v = GetPlayerVehicleID(playerid);
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[1])) bodyshop = 2; //dillimore
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(IsPlayerInDynamicArea(playerid, GarageAreas[3])) bodyshop = 4; //el q
- if(bodyshop == -1) return SysMsg(playerid, "Você deve estar perto de uma garagem.");
- new modcount = 0;
- for(new x = 0; x < 14; x++) if(ModQueue[playerid][x] >= 1) modcount ++;
- if(PendingPaintjob[playerid] != -1) modcount ++;
- if(modcount == 0) return SysMsg(playerid, "Você não tem nenhum mods pendente instalação.");
- new
- price,
- spoiler = ModQueue[playerid][CARMODTYPE_SPOILER],
- hood = ModQueue[playerid][CARMODTYPE_HOOD],
- roof = ModQueue[playerid][CARMODTYPE_ROOF],
- lamps = ModQueue[playerid][CARMODTYPE_LAMPS],
- exhaust = ModQueue[playerid][CARMODTYPE_EXHAUST],
- wheels = ModQueue[playerid][CARMODTYPE_WHEELS],
- fbumper = ModQueue[playerid][CARMODTYPE_FRONT_BUMPER],
- rbumper = ModQueue[playerid][CARMODTYPE_REAR_BUMPER],
- rvent = ModQueue[playerid][CARMODTYPE_VENT_RIGHT],
- lvent = ModQueue[playerid][CARMODTYPE_VENT_LEFT];
- if(spoiler >= 1000) price += 750;
- if(hood >= 1000) price += 500;
- if(roof >= 1000) price += 500;
- if(lamps>= 1000) price += 200;
- if(exhaust>= 1000) price += 500;
- if(wheels >= 1000) price += 500;
- if(fbumper >= 1000) price += 1000;
- if(rbumper >= 1000) price += 1000;
- if(rvent >= 1000) price += 1000;
- if(lvent >= 1000) price += 1000;
- if(PendingPaintjob[playerid] != -1) price += 1000;
- price *= GetVehicleRepairMultiplier(GetVehicleModel(v));
- new conf[12];
- if(sscanf(params, "s[12]", conf)) return SendClientMessageF(playerid, COLOR_WHITE, "Use: /comprarmods confirmar. Isso irá custar $%s.", format_cash(price));
- if(strmatch(conf, "confirmar"))
- {
- if(Cash[playerid] - price < 0) return SysMsg(playerid, "Você não tem dinheiro suficiente.");
- for(new x = 0; x < 14; x++)
- {
- if(ModQueue[playerid][x] != 0)
- {
- VehicleData[v][VehicleMod][x] = ModQueue[playerid][x];
- ModQueue[playerid][x] = 0;
- }
- }
- if(PendingPaintjob[playerid] != -1) VehicleData[v][VehiclePaintjob] = PendingPaintjob[playerid];
- PendingPaintjob[playerid] = -1;
- GivePlayerCash(playerid, -price);
- SendClientMessageF(playerid, COLOR_WHITE, "Você adicionou mods no seu veiculo por $%s!", format_cash(price));
- SavePlayerVehicles(playerid, 0);
- }
- return true;
- }
- CMD:removemods(playerid)
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar dentro do veiculo.");
- new bodyshop = -1, v = GetPlayerVehicleID(playerid);
- if(IsPlayerInDynamicArea(playerid, GarageAreas[0])) bodyshop = 1; //palomino creek
- if(IsPlayerInDynamicArea(playerid, GarageAreas[1])) bodyshop = 2; //dillimore
- if(IsPlayerInDynamicArea(playerid, GarageAreas[2])) bodyshop = 3; //fort carson
- if(IsPlayerInDynamicArea(playerid, GarageAreas[3])) bodyshop = 4; //el q
- if(bodyshop == -1) return SysMsg(playerid, "Você deve estar perto de uma garagem.");
- if(VehicleData[v][Hotwired] == 1) return SysMsg(playerid, "Você não pode modificar um veiculo roubado.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você deve ser o motorista do veículo.");
- if(IsHelicopter(v) && IsPlane(v) && IsBoat(v) && IsBike(v)) return SysMsg(playerid,"Você não pode modificar Helicopteros, Aviões, Barcos.");
- if(bodyshop == 5) return SysMsg(playerid,"Você não pode modificar veículos nesta garagem.");
- if(VehicleData[v][VehicleOwnerSQLID] != SQLID[playerid]) return SysMsg(playerid, "Você deve ser dono deste veiculo.");
- if(aspawned{v}) return SysMsg(playerid, "Você não pode modificar os veículos spawnados pela administração, ou fazer isso sem autorização de um Helper/Admin.");
- gstr[0] = EOS;
- new count = 0;
- for(new x = 0; x < 14; x++)
- {
- if(ModQueue[playerid][x] != 0)
- {
- format(sgstr, sizeof(sgstr), "{FF0000}%s: %s\n", ComponentTypes[x], GetVehicleModName(GetVehicleComponentInSlot(v, x)));
- strcat(gstr, sgstr);
- count ++;
- }
- else if(VehicleData[v][VehicleMod][x] != 0)
- {
- format(sgstr, sizeof(sgstr), "%s: %s\n", ComponentTypes[x], GetVehicleModName(GetVehicleComponentInSlot(v, x)));
- strcat(gstr, sgstr);
- count ++;
- }
- }
- if(count == 0) return SysMsg(playerid, "Sem mods para remover.");
- else Dialog_Show(playerid, vModRemove, DIALOG_STYLE_LIST, "Remoção de Mod: Vermelho = Pendente | Branco = Instalado", gstr, "Remove", "Cancelar");
- return true;
- }
- //End of vehicle commands
- //Weapon crate commands
- CMD:caixa(playerid, params[])
- {
- new item[12], item2[12];
- if(sscanf(params, "s[12]S()[12]", item, item2)) return SysMsg(playerid,"Use: /caixa [/pegar/colocar/remover/chão/dropar/destruir/lista/ajuda]");
- new x = 0;
- if(strmatch(item, "lista"))
- {
- for(x = 0; x < MAX_FACTIONS; x++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, CrateData[x][CrateX], CrateData[x][CrateY], CrateData[x][CrateZ]))
- {
- SendClientMessage(playerid, COLOR_WHITE, "[CONTEÚDO DA CAIXA]");
- for(new k = 0; k < 5; k++)
- {
- if(CrateData[x][CrateWeapon][k] == 0) SendClientMessageF(playerid, COLOR_WHITE, "Slot %i: Vazio", k);
- else SendClientMessageF(playerid, COLOR_WHITE, "Slot %i: %s", k, GetWeaponNameFromID(CrateData[x][CrateWeapon][k]));
- }
- return true;
- }
- }
- return SysMsg(playerid, "Você não está perto de uma caixa.");
- }
- else if(strmatch(item, "colocar"))
- {
- if(CarryingCrate[playerid] == 0) return SysMsg(playerid, "You are not carrying a crate.");
- new v = GetNearestVehicle(playerid);
- if(!IsCrateVehicle(v)) return SysMsg(playerid, "You are not near a suitable vehicle.");
- if(VehicleBoots[v][1] == 0 && !IsBoat(v)) return SysMsg(playerid, "This vehicle's trunk must be open.");
- if(Crate{v}) return SysMsg(playerid, "Esse veiculo já tem uma caixa dentro.");
- new Float:pos[3];
- GetVehiclePos(v, pos[0], pos[1], pos[2]);
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, pos[0], pos[1], pos[2])) return SysMsg(playerid, "Você precisa estar mais perto do veículo.");
- new index = CrateIndex[playerid];
- AttachCrateToVehicle(v, 964);
- CrateData[CarryingCrate[playerid]][CrateVehicleID] = v;
- Crate{v} = true;
- CarryingCrate[playerid] = 0;
- CrateIndex[playerid] = 0;
- RemovePlayerAttachedObject(playerid, index);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- SendClientMessageF(playerid, COLOR_WHITE, "You have placed your crate inside of this %s.", GetVehicleName(v));
- SetPlayerChatBubble(playerid, "* Sets the weapon crate inside of the vehicle. *", COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- else if(strmatch(item, "remover"))
- {
- new v = GetNearestVehicle(playerid);
- if(VehicleBoots[v][1] == 0 && !IsBoat(v)) return SysMsg(playerid, "This vehicle's trunk must be open.");
- new Float:pos[3];
- GetVehiclePos(v, pos[0], pos[1], pos[2]);
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, pos[0], pos[1], pos[2])) return SysMsg(playerid, "Você precisa estar mais perto do veículo.");
- for(x = 0; x < MAX_FACTIONS; x++)
- {
- if(CrateData[x][CrateVehicleID] == v)
- {
- if(GetFreePlayerObjectIndex(playerid) == -1) return SysMsg(playerid, "Você já está carregando uma caixa de armas, ou está sem slot para segurar outro objeto.");
- DestroyDynamicObjectEx(VehObject[v], "VehObject[v]");
- VehObject[v] = INVALID_OBJECT_ID;
- CrateData[x][CrateVehicleID] = 0;
- Crate{v} = false;
- CarryingCrate[playerid] = x;
- CrateIndex[playerid] = GetFreePlayerObjectIndex(playerid);
- SetPlayerAttachedObject(playerid, CrateIndex[playerid], 964, 1, -0.057999, 0.659000, 0.000000, 0.000000, 88.099960, -179.699905, 0.499000, 0.559000, 0.414999);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
- SetPlayerChatBubble(playerid, "* Chega ao veículo e agarra a caixa da arma de dentro dela. *", COLOR_EMOTE, 15.0, 6000);
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- return true;
- }
- }
- return SysMsg(playerid, "Esse veiculo não tem caixas dentro.");
- }
- else if(strmatch(item, "chão"))
- {
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SysMsg(playerid, "Vôcê precisa estar no chão para fazer isso.");
- for(x = 0; x < MAX_FACTIONS; x++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, CrateData[x][CrateX], CrateData[x][CrateY], CrateData[x][CrateZ]))
- {
- if(GetFreePlayerObjectIndex(playerid) == -1) return SysMsg(playerid, "Você já está carregando uma caixa de armas, ou está sem slot para segurar outro objeto.");
- DestroyDynamicObjectEx(CrateData[x][CrateObject], "CrateData[x][CrateObject]");
- CrateData[x][CrateX] = 0.0;
- CrateData[x][CrateY] = 0.0;
- CrateData[x][CrateZ] = 0.0;
- CarryingCrate[playerid] = x;
- CrateIndex[playerid] = GetFreePlayerObjectIndex(playerid);
- SetPlayerAttachedObject(playerid, CrateIndex[playerid], 964, 1, -0.057999, 0.659000, 0.000000, 0.000000, 88.099960, -179.699905, 0.499000, 0.559000, 0.414999);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
- SetPlayerChatBubble(playerid, "* Inclina-se para a frente e pega o caixote da arma do chão. *", COLOR_EMOTE, 15.0, 6000);
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- return true;
- }
- }
- return SysMsg(playerid, "Você não está perto de uma caixa.");
- }
- else if(strmatch(item, "dropar"))
- {
- if(CarryingCrate[playerid] == 0) return SysMsg(playerid, "Você não está carregando uma caixa.");
- new Float:Pos[3];
- x = CarryingCrate[playerid];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- RemovePlayerAttachedObject(playerid, CrateIndex[playerid]);
- CrateIndex[playerid] = 0;
- CarryingCrate[playerid] = 0;
- GetXYInFrontOfPlayer(playerid, Pos[0], Pos[1], 2.0);
- CrateData[x][CrateObject] = CreateDynamicObject(964, Pos[0], Pos[1], Pos[2]-1.0, 0, 0, 0, GetPlayerVirtualWorld(playerid));
- CrateData[x][CrateX] = Pos[0];
- CrateData[x][CrateY] = Pos[1];
- CrateData[x][CrateZ] = Pos[2];
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- SetPlayerChatBubble(playerid, "* Inclina-se para a frente e coloca a caixa de armas no chão. *", COLOR_EMOTE, 15.0, 6000);
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- return true;
- }
- else if(strmatch(item, "destruir"))
- {
- for(x = 0; x < MAX_FACTIONS; x++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, CrateData[x][CrateX], CrateData[x][CrateY], CrateData[x][CrateZ]))
- {
- for(new k = 0; k < 5; k++)
- {
- if(CrateData[x][CrateWeapon][k] != 0) return SysMsg(playerid, "Você não pode destruir uma caixa se tiver armas dentro dela.");
- }
- DestroyCrate(x);
- SetPlayerChatBubble(playerid, "* Descarta a caixa da arma. *", COLOR_EMOTE, 15.0, 6000);
- SendClientMessage(playerid, COLOR_WHITE, "Você destruiu a caixa de armas.");
- return true;
- }
- }
- return SysMsg(playerid, "Você não está perto de uma caixa.");
- }
- else if(strmatch(item, "pegar"))
- {
- if(isnull(item2)) return SysMsg(playerid,"Use: /caixa pegar [ID de dentro da caixa /caixa lista]");
- if(!IsNumeric(item2)) return SysMsg(playerid,"A quantidade deve ser um número.");
- new gun = strval(item2);
- if(gun > 5) return SysMsg(playerid, "O ID da arma não pode ser maior que 5.");
- for(x = 0; x < MAX_FACTIONS; x++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, CrateData[x][CrateX], CrateData[x][CrateY], CrateData[x][CrateZ]))
- {
- if(GetFreeWeaponObjectIndex(playerid) == -1) return SysMsg(playerid, "Você não pode pegar outra arma da caixa se você não tem mais que um coldre.");
- new wid = CrateData[x][CrateWeapon][gun], Slot = GetWeaponSlot(wid);
- if(!WeaponCheck(playerid, wid)) return SysMsg(playerid, "Você não pode pegar essa arma. Ou tens duas pistolas ou uma arma primária e uma pistola na tua pessoa.");
- if(CrateData[x][CrateWeapon][gun] == 0) return SysMsg(playerid, "Esta caixa não tem uma arma nesse slot.");
- if(WeaponData[playerid][GetWeaponSlot(CrateData[x][CrateWeapon][gun])][Weapon] == CrateData[x][CrateWeapon][gun]) return SysMsg(playerid, "Você já tem essa arma na sua pessoa.");
- if(WeaponData[playerid][Slot][WeaponID] >= 1) return SysMsg(playerid, "Você já possui uma arma desse tipo.");
- if(CrateData[x][CrateWeapon][gun] == 21)
- {
- new Float:arm;
- GetPlayerArmour(playerid, arm);
- if(arm > 0) return SysMsg(playerid, "Você já tem um colete.");
- SetPlayerArmourEx(playerid, 100.0, 1);
- }
- else GivePlayerWeaponEx(playerid, CrateData[x][CrateWeapon][gun], GetDefaultWeaponAmmo(CrateData[x][CrateWeapon][gun]), 2);
- SetPlayerChatBubble(playerid, "* Ajoelha-se e pega uma arma da caixa*", COLOR_EMOTE, 15.0, 6000);
- SendClientMessageF(playerid, COLOR_WHITE, "Você pegou uma %s da caixa de armas.", weaponstring[CrateData[x][CrateWeapon][gun]]);
- CrateData[x][CrateWeapon][gun] = 0;
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- return true;
- }
- }
- return SysMsg(playerid, "Você não está perto de uma caixa.");
- }
- else if(strmatch(item, "ajuda"))
- {
- SendClientMessage(playerid, COLOR_WHITE, "[GSRP Sistema de arma - Ajuda]");
- SysMsg(playerid,"Opção: Pegar - Tirar da caixa - Syntax: /caixa pegar [slotid (/caixas lista para ver o slot)]");
- SysMsg(playerid,"Opção: Colocar - Coloca a caixa no porta-malas de um veículo (Use /caixasveiculo para ver se os veiculos) - Syntax: /caixa colocar");
- SysMsg(playerid,"Opção: Remover - Remove a caixa do porta-malas de um veículo - Syntax: /caixa remover");
- SysMsg(playerid,"Opção: Pega do chão - Pegue uma caixa do chão (Você precisa está proximo da caixa) - Syntax: /caixa chão");
- SysMsg(playerid,"Opção: Drop - Coloca a caixa na sua frente (Precisa está segurando) - Syntax: /caixa dropar");
- SysMsg(playerid,"Opção: Destruir - Destruir completamente a caixa - Syntax: /caixa destruir");
- SysMsg(playerid,"Opção: Lista - Lista de armas dentro da caixa - Syntax: /caixa listas");
- SysMsg(playerid,"Opção: Ajuda - Lista de menu de ajuda para o sistema de caixas - Syntax: /caixa ajuda");
- }
- else SysMsg(playerid,"Use: /caixa [/pegar/colocar/remover/chão/dropar/destruir/lista/ajuda]");
- return true;
- }
- CMD:caixasveiculo(playerid, params[])//cratevehicles //caixas
- {
- if(!Logged{playerid}) return true;
- SendClientMessage(playerid, COLOR_WHITE, "Você só pode colocar caixas de armas nestes veículos:");
- SendSplitMessage(playerid, COLOR_WHITE, "Yosemite, Burrito, Berkey's RC Van, Bobcat, Walton, Benson, Yankee, Boxville, Rumpo, Mule, Tropic, Marquis, Speeder, Reefer, Coastguard");
- return true;
- }
- //end of weapon crate commands
- //general, misc commands
- CMD:stats(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) ShowPlayerStats(playerid, playerid);
- else
- {
- if(!IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid, AUTHMSG);
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /stats [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- ShowPlayerStats(playa, playerid);
- }
- return true;
- }
- CMD:ttp(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new d = 0, h = 0, temp = TotalTimePlayed[playerid];
- while(temp > 1440)
- {
- temp -= 1440;
- d++;
- }
- while(temp > 60)
- {
- temp -= 60;
- h++;
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Tempo total jogado: {00FF00}%i{FFFFFF} dias {00FF00}%i{FFFFFF} horas e {00FF00}%i{FFFFFF} minutes.", d, h, temp);
- return true;
- }
- CMD:idade(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- mysql_format(conn, mquery, sizeof(mquery), "SELECT BirthYear, BirthMonth, BirthDate FROM players WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery, "AgeCheck", "d", playerid);
- return true;
- }
- CMD:mudardniver(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new age, birthyear, birthmonth, birthday, thstndrd[3];
- if(sscanf(params, "iii", birthday, birthmonth, birthyear)) return SysMsg(playerid,"Use: /mudardniver [Dia 1-31] [Mês 1-12] [Ano] *Isso é gratis*");
- if(birthday < 1 || birthday > 31) return SysMsg(playerid, "Dia inválido. [1 ?31]");
- if(birthmonth < 1 || birthmonth > 12) return SysMsg(playerid, "Mês inválido. [1 ?12]");
- if(birthday > LastDayInMonth(birthmonth)) return SysMsg(playerid, "Dia inválido para o mês escolhido.");
- if(birthyear > gServerYear - 16 || birthyear < 1900) return SysMsg(playerid, "Ano inválido. Você deve ter pelo menos 16 anos e o ano não pode ser inferior a 1900.");
- if(birthday > LastDayInMonth(birthmonth)) return SysMsg(playerid, "Dia inválido para o mês escolhido.");
- if(birthyear > gServerYear - 16 || birthyear < 1900) return SysMsg(playerid, "Ano inváido. Você deve ter pelo menos 16 anos e o ano não pode ser inferior a 1900.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET BirthYear = %i, BirthMonth = %i, BirthDate = %i WHERE id = %i", birthyear, birthmonth, birthday, SQLID[playerid]);
- mysql_pquery(conn, mquery);
- age = gServerYear - birthyear;
- switch(birthday)
- {
- case 1,21,31: format(thstndrd, sizeof(thstndrd), "");
- case 2,22: format(thstndrd, sizeof(thstndrd), "");
- case 3,23: format(thstndrd, sizeof(thstndrd), "");
- default: format(thstndrd, sizeof(thstndrd), "");
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Seu aniversário é: %i%s of %s %i.", birthday, thstndrd, GetMonthName(birthmonth), birthyear);
- SendClientMessageF(playerid, COLOR_WHITE, "Isso significa que você tem %i anos de idade.", age);
- return true;
- }
- CMD:buscarano(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid, "Use: /buscarano [Idade desejada]");
- new age = strval(params);
- if(age < 16 || age > 100) return SysMsg(playerid, "Idade inválida. [16 - 100]");
- new chosenyear = gServerYear - age;
- SendClientMessageF(playerid, COLOR_WHITE, "Se a idade atual for %i Anos, Você teria que definir seu ano de nascimento para %i.", age, chosenyear);
- return true;
- }
- CMD:mostrarlicencas(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return ShowPlayerLicenses(playerid, playerid);
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /mostrarlicencas [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para fazer isso.");
- if(playa != playerid)
- {
- format(gstr, sizeof(gstr),"* %s mostra suas licenças para %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- for(new lic = 0; lic < sizeof(Licenses[]); lic++) if(Licenses[playerid][lic] == 1) UnlockAchievement(playerid, 43);
- }
- ShowPlayerLicenses(playerid, playa);
- return true;
- }
- CMD:mostrarl(playerid, params[]) return cmd_mostrarlicencas(playerid, params);
- CMD:mostrarchaves(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /mostrarchaves [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(playa == playerid) return SysMsg(playerid,"Você não pode mostrar uma chave a si mesmo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para fazer isso.");
- new count = 0;
- format(gstr, sizeof(gstr), "Chaves do veículo de %s: ", NameEx(playerid));
- for(new i = 1, x = GetVehiclePoolSize(); i <= x; i++)
- {
- if(VehicleData[i][VehicleOwnerSQLID] == SQLID[playerid])
- {
- if(!VehicleData[i][Impounded])
- {
- if(count == 0)
- {
- strcat(gstr, GetVehicleNameEx(VehicleData[i][VehicleModel]));
- }
- else
- {
- strcat(gstr, ", ");
- strcat(gstr, GetVehicleNameEx(VehicleData[i][VehicleModel]));
- }
- count ++;
- }
- }
- }
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr),"* %s mostra para %s um conjunto de chaves. *", NameRP(playerid), NameRP(playa));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:dmv(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 2.0, -2025.8422,-114.5996,1035.1719)) return SysMsg(playerid, "Você não está em um DMV.");
- Dialog_Show(playerid, DMVMain, DIALOG_STYLE_LIST, "Bem-vindo ao DMV! Por favor selecione uma opção:", "Licença para carros gerais [GVL-1]\nLicença para veículos grande [GVL-2]\nLicença para motos [MB]\nLicença para Barcos [B]\nLicença para helicóptero [A1]\nLicença para avião [A2]", "Selecionar", "Sair");
- return true;
- }
- CMD:finalizarteste(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(DMV_CanEndTest[playerid] == 0) return true;
- DMV_CanEndTest[playerid] = 0;
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorldEx(playerid, 0);
- SetPlayerPos(playerid, 1251.018798, 134.651306, 19.948959);
- SetPlayerFacingAngle(playerid, 68.0);
- TogglePlayerControllable(playerid, 1);
- SetCameraBehindPlayer(playerid);
- PlayerPlaySound(playerid, SOUND_DMV_PASS_END, 0, 0, 0);
- GameTextForPlayer(playerid, " ", 100, 3);
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "[DMV] Obrigado pelo uso do San Andreas DMV. Aproveite a sua nova licença e conduza com segurança.");
- return true;
- }
- CMD:comprarlevel(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new ReqXP = PlayerLevel[playerid] * 10;
- if(isnull(params))
- {
- SendClientMessageF(playerid,COLOR_ORANGE,"Um Level-Up exigirá %i Pontos de experiência, você tem atualmente %i.",ReqXP,PlayerXP[playerid]);
- SendClientMessage(playerid,COLOR_ORANGE,"Para subir de level agora, digite '/comprarlevel confirmar'");
- return true;
- }
- if(strcmp("confirmar",params) == 0)
- {
- if(PlayerXP[playerid] < ReqXP) return SysMsg(playerid,"Você não tem XP suficiente para subir de nível.");
- PlayerXP[playerid] -= ReqXP;
- PlayerLevel[playerid]++;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET PlayerXP = %i, PlayerLevel = %i WHERE id = %i", PlayerXP[playerid], PlayerLevel[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- if(PlayerLevel[playerid] >= 2) UnlockAchievement(playerid,20);
- if(PlayerLevel[playerid] >= 5) UnlockAchievement(playerid,21);
- if(PlayerLevel[playerid] >= 10) UnlockAchievement(playerid,22);
- if(PlayerLevel[playerid] >= 20) UnlockAchievement(playerid,23);
- if(PlayerLevel[playerid] >= 30) UnlockAchievement(playerid,52);
- if(PlayerLevel[playerid] >= 40) UnlockAchievement(playerid,53);
- if(PlayerLevel[playerid] >= 50) UnlockAchievement(playerid,54);
- if(PlayerLevel[playerid] >= 75) UnlockAchievement(playerid,55);
- if(PlayerLevel[playerid] >= 100) UnlockAchievement(playerid,56);
- if(PlayerLevel[playerid] >= 101) UnlockAchievement(playerid,57);
- SendClientMessageF(playerid,COLOR_ORANGE,"Parabéns! Agora você é level %i. %i Pontos de experiência eram necessários.",PlayerLevel[playerid],ReqXP);
- if(PlayerLevel[playerid] == 2)
- {
- GivePlayerCash(playerid, 2500);
- SendClientMessage(playerid, COLOR_GREEN, "Level up bonus! Você recebeu $2.500 por atingir o nível dois.");
- }
- if(PlayerLevel[playerid] == 3)
- {
- GivePlayerCash(playerid, 5000);
- SendClientMessage(playerid, COLOR_GREEN, "Level up bonus! Você recebeu $5.000 por alcançar o nível três.");
- }
- return true;
- }
- return true;
- }
- CMD:comprararmaskill(playerid, params[])//comprar skill
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid,5.5,312.582183, -165.342315, 999.601013)) return SysMsg(playerid,"Você não está em um Ammunation.");
- if(WeaponSkillLevel[playerid] == 10) return SysMsg(playerid,"Sua habilidade é máxima.");
- new ReqXP;
- if(WeaponSkillLevel[playerid] <= 1) ReqXP = 5;
- if(WeaponSkillLevel[playerid] == 2) ReqXP = 5;
- if(WeaponSkillLevel[playerid] == 3) ReqXP = 5;
- if(WeaponSkillLevel[playerid] == 4) ReqXP = 10;
- if(WeaponSkillLevel[playerid] == 5) ReqXP = 10;
- if(WeaponSkillLevel[playerid] == 6) ReqXP = 10;
- if(WeaponSkillLevel[playerid] == 7) ReqXP = 20;
- if(WeaponSkillLevel[playerid] == 8) ReqXP = 20;
- if(WeaponSkillLevel[playerid] == 9) ReqXP = 20;
- if(isnull(params))
- {
- format(gstr, sizeof(gstr),"O nível de habilidade atual da arma é %i.",WeaponSkillLevel[playerid]);
- SendClientMessage(playerid,COLOR_ORANGE,gstr);
- format(gstr, sizeof(gstr),"Um nível de habilidade de arma custará você %i Pontos de experiência. Você tem atualmente %i.",ReqXP,PlayerXP[playerid]);
- SendClientMessage(playerid,COLOR_ORANGE,gstr);
- SendClientMessage(playerid,COLOR_ORANGE,"Para comprar a Skill agora, digite '/comprararmaskill confirmar'");
- return true;
- }
- if(strcmp("confirmar",params) == 0)
- {
- if(PlayerXP[playerid] < ReqXP) return SysMsg(playerid,"Você não tem pontos de experiência suficiente para subir de nível.");
- PlayerXP[playerid] -= ReqXP;
- if(WeaponSkillLevel[playerid] == 0)
- {
- WeaponSkillLevel[playerid] = 2;
- }
- else
- {
- WeaponSkillLevel[playerid]++;
- }
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET PlayerXP = %i, WeaponSkill = %i WHERE id = %i", PlayerXP[playerid], WeaponSkillLevel[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- new newSkill = WeaponSkillLevel[playerid] * 100;
- new SkillOneHand;
- if(newSkill > 999)
- {
- newSkill = 999;
- SkillOneHand = 900;
- }
- SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL, newSkill-10);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL_SILENCED, newSkill);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_DESERT_EAGLE, newSkill);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_SHOTGUN, newSkill);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, SkillOneHand);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_SPAS12_SHOTGUN, newSkill);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, SkillOneHand);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_MP5, newSkill);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_AK47, newSkill);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_M4, newSkill);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_SNIPERRIFLE, newSkill);
- format(gstr, sizeof(gstr),"Parabéns! Sua habilidade arma é agora nível %i! Exigindo %i Pontos de experiência.",WeaponSkillLevel[playerid],ReqXP);
- SendClientMessage(playerid,COLOR_ORANGE,gstr);
- if(WeaponSkillLevel[playerid] == 10)
- {
- PlayerXP[playerid] += 50;
- MySQLUpdateInt(SQLID[playerid], "PlayerXP", PlayerXP[playerid], "players");
- SendClientMessage(playerid,COLOR_PINK," >> Habilidade da arma estourou! (+50 Pontos de experiência)");
- UnlockAchievement(playerid,14);
- }
- return true;
- }
- return true;
- }
- CMD:inventario(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(isnull(params)) ShowPlayerInventory(playerid, playerid);
- else
- {
- if(!IsPlayerAdminLevelOK(playerid, 1)) return ShowPlayerInventory(playerid, playerid);
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /inventario [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- ShowPlayerInventory(playa, playerid);
- }
- return true;
- }
- CMD:dar(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- new playa = -1, itemname[25], itemamount[45], amount, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]s[25]S()[45]", name, itemname, itemamount))
- {
- SysMsg(playerid,"Use: /dar [ID ou nome do jogador] [item] [Opcional: quantidade/nome]");
- SysMsg(playerid,"Items: Vara, Isca, Dado, Arma, Radio, GalaoCombustivel, Relogio, Isqueiro, Cigarro, GPS");
- SysMsg(playerid,"Marijuana, Cocaina, Moonshine, Bong, Papel, kitmedico, SementeMaconha, Oleo");
- return true;
- }
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(!Logged{playa}) return SysMsg(playerid,"Ele deve estar logados.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode dar isso a você mesmo.");
- new Float:Pos[3];
- GetPlayerPos(playa, Pos[0], Pos[1], Pos[2]);
- if(!IsPlayerInRangeOfPoint(playerid, 3.5, Pos[0], Pos[1], Pos[2])) return SysMsg(playerid,"Você deve estar perto do jogador para dar-lhes algo.");
- if(strcmp("Vara",itemname,true) == 0)
- {
- if(Inventory[playerid][FishingRod] == 0) return SysMsg(playerid,"Você não tem uma Vara de Pesca.");
- if(Inventory[playa][FishingRod] == 1 && FishingRodHealth[playa] != 0) return SysMsg(playerid,"Esse jogador já tem uma vara de pesca.");
- Inventory[playerid][FishingRod] = 0;
- Inventory[playa][FishingRod] = 1;
- MySQLUpdateInt(SQLID[playerid], "FishingRod", Inventory[playerid][FishingRod], "players");
- MySQLUpdateInt(SQLID[playa], "FishingRod", Inventory[playa][FishingRod], "players");
- format(gstr, sizeof(gstr), "Você deu para %s sua vara de pesca.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu uma vara de pesca.", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s entrega uma vara de pesca para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Isca",itemname,true) == 0)
- {
- if(Inventory[playerid][FishingBait] == 0) return SysMsg(playerid,"Você não tem nenhuma Isca.");
- if(sscanf(params, "us[25]s[45]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] Bait [Quantidade de Isca]");
- amount = strval(itemamount);
- if(amount < 1 || amount > Inventory[playerid][FishingBait]) return SysMsg(playerid,"Essa quantidade é inválida. (1 somente para seu valor)");
- Inventory[playerid][FishingBait] -= amount;
- Inventory[playa][FishingBait] += amount;
- MySQLUpdateInt(SQLID[playerid], "FishingBait", Inventory[playerid][FishingBait], "players");
- MySQLUpdateInt(SQLID[playa], "FishingBait", Inventory[playa][FishingBait], "players");
- format(gstr, sizeof(gstr), "Você deu para %s %i iscas de pesca. Agora você tem %i.", NameRP(playa), amount, Inventory[playerid][FishingBait]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu %i iscas de pesca. Agora você tem %i.", NameRP(playerid), amount, Inventory[playa][FishingBait]);
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s entrega algumas iscas de pesca para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Dado",itemname,true) == 0)
- {
- if(Inventory[playerid][Dice] == 0) return SysMsg(playerid,"Você não tem nenhum dado para dar.");
- if(Inventory[playa][Dice] == 1) return SysMsg(playerid,"Esse jogador já tem Dado.");
- Inventory[playerid][Dice] = 0;
- Inventory[playa][Dice] = 1;
- MySQLUpdateInt(SQLID[playerid], "HasDice", Inventory[playerid][Dice], "players");
- MySQLUpdateInt(SQLID[playa], "HasDice", Inventory[playa][Dice], "players");
- format(gstr, sizeof(gstr), "Você deu para %s seu dado.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu um dado.", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s retira um dado do bolso e entrega a %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Radio",itemname,true) == 0)
- {
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem Rádio.");
- if(Inventory[playa][Radio] == 1) return SysMsg(playerid,"Esse jogador já tem um rádio.");
- Inventory[playerid][Radio] = 0;
- Inventory[playa][Radio] = 1;
- RadioPoweredOn[playa] = 0;
- RadioFrequency[playa] = 1000;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasRadio = %i, RadioFrequency = %i, RadioPower = %i WHERE id = %i", Inventory[playa][Radio], RadioFrequency[playa], RadioPoweredOn[playa], SQLID[playa]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s seu radio.", NameRP(playa));
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu um Radio.", NameRP(playerid));
- format(gstr, sizeof(gstr), "* %s entrega um Rádio para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Relogio",itemname,true) == 0)
- {
- if(Inventory[playerid][Watch] == 0) return SysMsg(playerid,"Você não tem nenhum Relógio.");
- if(Inventory[playa][Watch] == 1) return SysMsg(playerid,"Esse jogador já tem um Relógio.");
- Inventory[playerid][Watch] = 0;
- Inventory[playa][Watch] = 1;
- TextDrawHideForPlayer(playerid, TimeText);
- TextDrawHideForPlayer(playerid, TimeText24);
- TimeIsDisplayed{playerid} = false;
- MySQLUpdateInt(SQLID[playerid], "HasWatch", Inventory[playerid][Watch], "players");
- MySQLUpdateInt(SQLID[playa], "HasWatch", Inventory[playa][Watch], "players");
- format(gstr, sizeof(gstr), "Você deu seu relógio para %s.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu um relógio.", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s entrega um relógio para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("GalaoGasolina",itemname,true) == 0)
- {
- if(Inventory[playerid][FuelCan][0] == -1) return SysMsg(playerid,"Você não tem nenhum Galão de Gasolina.");
- if(Inventory[playa][FuelCan][0] >= 0) return SysMsg(playerid,"Esse jogador já tem um galão de Gasolina.");
- Inventory[playa][FuelCan][0] = Inventory[playerid][FuelCan][0];
- Inventory[playa][FuelCan][1] = Inventory[playerid][FuelCan][1];
- Inventory[playerid][FuelCan][0] = 0;
- Inventory[playerid][FuelCan][1] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasFuelCan = %i, HasFuelCanType = %i WHERE id = %i", Inventory[playerid][FuelCan][0], Inventory[playerid][FuelCan][1], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasFuelCan = %i, HasFuelCanType = %i WHERE id = %i", Inventory[playa][FuelCan][0], Inventory[playa][FuelCan][1], SQLID[playa]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr), "Você deu para %s seu galão de Gasolina.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu um galão de Gasolina.", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s entrega uma galão de gasolina para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Celular",itemname, true) == 0)
- {
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid, "Você não tem um celular para dar a ninguém.");
- if(IsPhoneRinging[playerid] == 1) return SysMsg(playerid,"Você não pode armazenar seu celular enquanto toca.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você não pode armazenar seu celular enquanto você o está usando.");
- if(Inventory[playa][MobilePhone] == 1) return SysMsg(playerid, "Este jogador já possui um celular.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossessor = %i WHERE id = %i", SQLID[playa], PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu seu celular para %s.", NameRP(playa));
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu um Celular.", NameRP(playerid));
- format(gstr, sizeof(gstr), "* %s entrega um celular para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM phones WHERE id = %i AND PhonePossession = 1", PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery, "LoadPlayerPhone", "d", playa);
- ClearPhoneData(playerid);
- }
- if(strcmp("arma",itemname,true) == 0 || strcmp("gun",itemname,true) == 0)
- {
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"(( Por favor, não dê armas dentro de veículos. ))");
- if(GetPlayerVehicleID(playa) > 0) return SysMsg(playerid,"(( Por favor, não dê armas às pessoas dentro de veículos. ))");
- if(sscanf(params, "us[25]s[30]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] arma [Nome da Arma]");
- new wid = GetWeaponIdFromName(itemamount);
- if(wid == -1) return SysMsg(playerid,"Nome de arma inválido.");
- if(wid < 1 || wid > 47) return SysMsg(playerid,"Arma Inválida.");
- if(wid == 19 || wid == 20 || wid == 21) return SysMsg(playerid,"Arma inválida.");
- new Slot = GetWeaponSlot(wid);
- if(!WeaponCheck(playa, wid)) return SysMsg(playerid, "Essa pessoa não pode segurar esta arma no momento.");
- if(WeaponData[playerid][Slot][Weapon] != wid) return SysMsg(playerid,"Você não tem esta arma.");
- if(WeaponData[playa][Slot][Weapon] >= 1) return SysMsg(playerid,"O receptor já possui uma arma nesse slot.");
- if(WeaponData[playerid][Slot][WeaponOrigin] == 3 && Faction[playerid] != Faction[playa]) return SysMsg(playerid, "Você não pode dar armas de facção a pessoas fora de sua facção.");
- TransferWeaponData(playerid, playa, Slot);
- SetPlayerArmedWeapon(playerid, 0);
- SyncPlayerWeapons(playerid);
- SyncPlayerWeapons(playa);
- SetPlayerArmedWeapon(playa, wid);
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s uma %s.", NameRP(playa), GetWeaponNameFromID(wid));
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu uma %s.", NameRP(playerid), GetWeaponNameFromID(wid));
- format(gstr, sizeof(gstr), "* %s entrega sua arma para %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("drogras",itemname,true)==0) //drug comment
- {
- SetPVarInt(playerid, "giveDrugs", playa);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM drugs WHERE drugOwner = %d AND drugAmount > 0 AND drugOwnerType = 'P' LIMIT 20", SQLID[playerid]);
- mysql_pquery(conn, mquery, "GivePlayerDrugs", "ii", playerid, 0);
- }
- if(strcmp("ingredientes",itemname,true) == 0)
- {
- SetPVarInt(playerid, "giveIngred", playa);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM ingredients WHERE ingOwner = %d AND ingAmount > 0 AND ingOwnerType = 'P' LIMIT 20", SQLID[playerid]);
- mysql_pquery(conn, mquery, "GivePlayerIngreds", "ii", playerid, 0);
- }
- if(strcmp("Isqueiro",itemname,true) == 0)
- {
- if(Inventory[playerid][Lighter] == 0) return SysMsg(playerid,"Você não tem um isqueiro.");
- if(Inventory[playa][Lighter] >= 1) return SysMsg(playerid,"Esse jogador já possui um isqueiro.");
- Inventory[playa][Lighter] = Inventory[playerid][Lighter];
- Inventory[playerid][Lighter] = 0;
- MySQLUpdateInt(SQLID[playerid], "HasLighter", Inventory[playerid][Lighter], "players");
- MySQLUpdateInt(SQLID[playa], "HasLighter", Inventory[playa][Lighter], "players");
- format(gstr, sizeof(gstr), "Você deu seu isqueiro para %s.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu um Isqueiro.", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s da um isqueiro para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Cigarro",itemname,true) == 0)
- {
- if(Inventory[playerid][Fags] == 0) return SysMsg(playerid,"Você não tem nenhum cigarro.");
- if(sscanf(params, "us[25]s[45]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] Cigarro [Quantidade]");
- amount = strval(itemamount);
- if(amount < 1 || amount > Inventory[playerid][Fags]) return SysMsg(playerid,"Esse montante era inválido. (1 somente para seu valor)");
- Inventory[playerid][Fags] -= amount;
- Inventory[playa][Fags] += amount;
- MySQLUpdateInt(SQLID[playerid], "HasFags", Inventory[playerid][Fags], "players");
- MySQLUpdateInt(SQLID[playa], "HasFags", Inventory[playa][Fags], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s %i Cigarro(s). Agora você tem %i.", NameRP(playa), amount, Inventory[playerid][Fags]);
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu %i Cigarro(s). Agora você tem %i.", NameRP(playerid), amount, Inventory[playa][Fags]);
- if(amount == 1)
- {
- format(gstr, sizeof(gstr), "* %s entrega um cigarro para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- format(gstr, sizeof(gstr), "* %s entrega alguns cigarros para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- }
- if(strcmp("GPS",itemname,true) == 0)
- {
- if(Inventory[playerid][GPS] == 0) return SysMsg(playerid,"Vpcê não tem nenhum GPS.");
- if(Inventory[playa][GPS] == 1) return SysMsg(playerid,"Esse jogador já possui um GPS.");
- Inventory[playerid][GPS] = 0;
- Inventory[playa][GPS] = 1;
- MySQLUpdateInt(SQLID[playerid], "HasGPS", Inventory[playerid][GPS], "players");
- MySQLUpdateInt(SQLID[playa], "HasGPS", Inventory[playa][GPS], "players");
- format(gstr, sizeof(gstr), "Você deu seu GPS para %s.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu um GPS.", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s entrega um GPS para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Marijuana",itemname,true) == 0)
- {
- if(Inventory[playerid][Weed] == 0) return SysMsg(playerid,"Você não tem nenhuma Marijuana.");
- if(sscanf(params, "us[25]s[45]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] Marijuana [gramas]");
- amount = strval(itemamount);
- if(amount < 1 || amount > Inventory[playerid][Weed]) return SysMsg(playerid,"Quantidade inválida (1 somente para seu valor)");
- if(amount + Inventory[playa][Weed] > DRUG_MAX_WEED) return SysMsgF(playerid, "Quantidade Inválida, %s não seria capaz de carregar tanto Weed. Você pode dar um máximo de %i gramas.", NameEx(playa), DRUG_MAX_WEED - Inventory[playa][Weed]);
- Inventory[playerid][Weed] -= amount;
- Inventory[playa][Weed] += amount;
- MySQLUpdateInt(SQLID[playerid], "Weed", Inventory[playerid][Weed], "players");
- MySQLUpdateInt(SQLID[playa], "Weed", Inventory[playa][Weed], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s %i gramas de marijuana, agora você tem %i restantes.", NameRP(playa), amount, Inventory[playerid][Weed]);
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu %i gramas de maconha, agora você tem %it.", NameRP(playerid), amount, Inventory[playa][Weed]);
- format(gstr, sizeof(gstr), "* %s entrega algumas gramas de marijuana para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Cocaina",itemname,true) == 0)
- {
- if(Inventory[playerid][Cocaine] == 0) return SysMsg(playerid,"Você não tem nenhuma Cocaina.");
- if(sscanf(params, "us[25]s[45]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] Cocaina [gramas]");
- amount = strval(itemamount);
- if(amount < 1 || amount > Inventory[playerid][Cocaine]) return SysMsg(playerid,"Essa quantidade é inválida. (1 somente para seu valor)");
- if(amount + Inventory[playa][Cocaine] > DRUG_MAX_COCAINE) return SysMsgF(playerid, "Quantidade Inválida, %s não seria capaz de transportar tanto cocaína. Você pode dar um máximo de %i gramas.", NameEx(playa), DRUG_MAX_COCAINE - Inventory[playa][Cocaine]);
- Inventory[playerid][Cocaine] -= amount;
- Inventory[playa][Cocaine] += amount;
- MySQLUpdateInt(SQLID[playerid], "Cocaine", Inventory[playerid][Cocaine], "players");
- MySQLUpdateInt(SQLID[playa], "Cocaine", Inventory[playa][Cocaine], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s %i gramas de cocaina, agora você tem %i gramas.", NameRP(playa), amount, Inventory[playerid][Cocaine]);
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu %i gramas de cocaina, agora você tem %i gramas.", NameRP(playerid), amount, Inventory[playa][Cocaine]);
- format(gstr, sizeof(gstr), "* %s entrega algumas gramas de cocaina para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("MoonShine",itemname,true) == 0)
- {
- if(Inventory[playerid][MoonShine] == 0) return SysMsg(playerid,"Você não tem nenhum MoonShine.");
- if(sscanf(params, "us[25]s[45]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] MoonShine [litros]");
- amount = strval(itemamount);
- if(amount < 1 || amount > Inventory[playerid][MoonShine]) return SysMsg(playerid,"Essa quantidade é inválida. (1 somente para seu valor)");
- if(amount + Inventory[playa][MoonShine] > DRUG_MAX_MOONSHINE) return SysMsgF(playerid, "Quantidade Inválida, %s não pode carregar essa quantidade de MoonShine. Você pode dar o máximo de %i litros.", NameEx(playa), DRUG_MAX_MOONSHINE - Inventory[playa][MoonShine]);
- Inventory[playerid][MoonShine] -= amount;
- Inventory[playa][MoonShine] += amount;
- MySQLUpdateInt(SQLID[playerid], "MoonShine", Inventory[playerid][MoonShine], "players");
- MySQLUpdateInt(SQLID[playa], "MoonShine", Inventory[playa][MoonShine], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s %i litros de MoonShine. Agora você tem %i.", NameRP(playa), amount, Inventory[playerid][MoonShine]);
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu %i litros de MoonShine. Agora você tem %i.", NameRP(playerid), amount, Inventory[playa][MoonShine]);
- format(gstr, sizeof(gstr), "* %s entrega um litro de MoonShine para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Bong",itemname,true) == 0)
- {
- if(Inventory[playerid][Bong] == 0) return SysMsg(playerid,"Você não tem nenhum Bong.");
- if(Inventory[playa][Bong] == 1) return SysMsg(playerid,"Esse jogador já tem um bong.");
- Inventory[playerid][Bong] = 0;
- Inventory[playa][Bong] = 1;
- MySQLUpdateInt(SQLID[playerid], "Bong", Inventory[playerid][Bong], "players");
- MySQLUpdateInt(SQLID[playa], "Bong", Inventory[playa][Bong], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s seu bong.", NameRP(playa));
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu um bong.", NameRP(playerid));
- format(gstr, sizeof(gstr), "* %s entrega um bong para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("papel",itemname,true) == 0)//revisar
- {
- if(Inventory[playerid][RollingPaper] == 0) return SysMsg(playerid,"Você não tem nenhum papel para dar.");
- if(sscanf(params, "us[25]s[45]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] papel [quantidade]");
- amount = strval(itemamount);
- if(amount < 1 || amount > Inventory[playerid][RollingPaper]) return SysMsg(playerid,"Essa quantidade é inválida. (1 somente para seu valor)");
- if(Inventory[playa][RollingPaper] + amount > MAX_ROLLINGPAPER) return SysMsg(playerid, "Que o jogador não pode ter que muitos papéis rolando.");
- Inventory[playerid][RollingPaper] -= amount;
- Inventory[playa][RollingPaper] += amount;
- MySQLUpdateInt(SQLID[playerid], "RollingPaper", Inventory[playerid][RollingPaper], "players");
- MySQLUpdateInt(SQLID[playa], "RollingPaper", Inventory[playa][RollingPaper], "players");
- format(gstr, sizeof(gstr), "Você deu para %s %i alguns papéis. Agora você tem %i.", NameRP(playa), amount, Inventory[playerid][RollingPaper]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s te deu %i alguns papéis. Agora você tem %i.", NameRP(playerid), amount, Inventory[playa][RollingPaper]);
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s entrega alguns papéis rolantes %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("kitmedico",itemname,true) == 0)
- {
- if(Inventory[playerid][MedKit] == 0) return SysMsg(playerid,"Você não tem um kit médico para dar.");
- if(Inventory[playa][MedKit] == 1) return SysMsg(playerid,"Esse jogador já tem um kit médico.");
- Inventory[playa][MedKit] = 1;
- Inventory[playerid][MedKit] = 0;
- MySQLUpdateInt(SQLID[playerid], "HasMedKit", Inventory[playerid][MedKit], "players");
- MySQLUpdateInt(SQLID[playa], "HasMedKit", Inventory[playa][MedKit], "players");
- format(gstr, sizeof(gstr), "Você deu seu MedKit para %s.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "%s deu-lhe o seu MedKit.", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s entrega um Kit médico para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("SementeMarijuana",itemname,true) == 0)
- {
- if(Inventory[playerid][WeedSeed] == 0) return SysMsg(playerid,"Você não tem nenhuma Semente de Marijuana.");
- if(sscanf(params, "us[25]s[45]", playa, itemname, itemamount)) return SysMsg(playerid,"Use: /dar [ID ou nome do jogador] SementeMarijuana [Quantidade]");
- amount = strval(itemamount);
- if(amount < 1 || amount > Inventory[playerid][WeedSeed]) return SysMsg(playerid,"Essa quantidade é inválida. (1 somente para seu valor)");
- if(Inventory[playa][WeedSeed] + amount > MAX_WEEDSEED) return SysMsg(playerid, "Esse jogador não pode ter muitas sementes de marijuana.");
- if(PlayerLevel[playa] < 5) return SysMsg(playerid, "Os jogadores precisam ser pelo menos o nível 5 para ter esse item.");
- Inventory[playerid][WeedSeed] -= amount;
- Inventory[playa][WeedSeed] += amount;
- MySQLUpdateInt(SQLID[playerid], "HasWeedSeed", Inventory[playerid][WeedSeed], "players");
- MySQLUpdateInt(SQLID[playa], "HasWeedSeed", Inventory[playa][WeedSeed], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu para %s %i semente de marijuana, agora você tem %i.", NameRP(playa), amount, Inventory[playerid][WeedSeed]);
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu %i sementes de marijuana, agora você %i.", NameRP(playerid), amount, Inventory[playa][WeedSeed]);
- format(sgstr, sizeof(sgstr), "* %s entrega algumas sementes de marijuana para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- if(strcmp("Oleo", itemname, true) == 0)
- {
- if(Inventory[playerid][EngineOil] == 0) return SysMsg(playerid, "Você não tem nenhum óleo de motor.");
- if(Inventory[playa][EngineOil] == 1) return SysMsg(playerid, "Esse jogador já tem óleo de motor.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasEngineOil = 0 WHERE id = %i", SQLID[playerid]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasEngineOil = 1 WHERE id = %i", SQLID[playa]);
- mysql_pquery(conn, mquery);
- Inventory[playerid][EngineOil] = 0;
- Inventory[playa][EngineOil] = 1;
- SendClientMessageF(playerid, COLOR_WHITE, "Você deu seu óleo de motor para %s.", NameRP(playa));
- SendClientMessageF(playa, COLOR_WHITE, "%s te deu um Litro de óleo de motor.", NameRP(playerid));
- format(sgstr, sizeof(sgstr), "* %s da um litro de óleo de motor para %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- CMD:drop(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode usar isso em um veículo.");
- new itemname[30], amount[50];
- if(sscanf(params, "s[20]S()[50]", itemname, amount))
- {
- SysMsg(playerid,"Use: /drop [item]");
- SysMsg(playerid,"Itens: Arma, Marijuana, Cocaina, Moonshine, Roupas, Maleta, Celular"); //Items: Weapon, Weed, Cocaine, Moonshine, Clothes, Briefcase, Phone");
- return true;
- }
- if(strcmp("arma",itemname,true) == 0)
- {
- if(DeathTimer[playerid] == 0 && Dead{playerid}) return SysMsg(playerid, "Você não pode dropar uma arma se estiver morto.");
- new wCount = 0;
- for(new w = 0; w < MAX_TOTAL_WEAPONS; w++)
- {
- if(WeaponData[playerid][w][Weapon] > 0)
- {
- wCount ++;
- }
- }
- if(!wCount) return SendClientMessage(playerid, COLOR_LIGHTBLUE, "Você não tem armas para dropar.");
- new wid = GetPlayerWeapon(playerid);
- if(wid == 0) return SysMsg(playerid,"Você precisa estar segurando a arma para soltá-lo.");
- if(wid < 1 || wid > 47) return SysMsg(playerid,"Você não pode dropar essa arma.");
- if(wid == 19 || wid == 20 || wid == 21) return SysMsg(playerid,"Você não pode dropar essa arma.");
- new Slot = GetWeaponSlot(wid);
- if(WeaponData[playerid][Slot][Weapon] != wid) return SysMsg(playerid,"Você não tem essa arma.");
- if(WeaponData[playerid][Slot][WeaponOrigin] == 3) return SysMsg(playerid, "Você não pode dropar armas de facção.");
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- DropGun(playerid, 1, WeaponData[playerid][Slot][Weapon], WeaponData[playerid][Slot][WeaponAmmo], X, Y, Z, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid));
- SendClientMessage(playerid, COLOR_WHITE, "Você dropou sua arma no chão. Você pegar o item usando /pegaritem.");
- format(sgstr, sizeof(sgstr), "* %s coloca uma arma no chão. *", NameRP(playerid));
- SetPlayerChatBubble(playerid, sgstr, COLOR_EMOTE, 20, 7000);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET WeaponPossession = 0, OwnerSQLID = 0, WeaponAmmo = %i, Dropped = 1 WHERE id = %i", WeaponData[playerid][Slot][WeaponAmmo], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- ResetWeaponVariables(playerid, 0, Slot);
- SetPlayerArmedWeapon(playerid, 0);
- SyncPlayerWeapons(playerid);
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- return true;
- }
- else if(strcmp("marijuana",itemname,true) == 0)
- {
- if(Inventory[playerid][Weed] == 0) return SysMsg(playerid, "Você não tem nenhuma Buxa de Marijuana.");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- new virtw = GetPlayerVirtualWorld(playerid);
- DropGun(playerid, 2, 1575, Inventory[playerid][Weed], Pos[0], Pos[1], Pos[2], virtw, GetPlayerInterior(playerid));
- Inventory[playerid][Weed] = 0;
- MySQLUpdateInt(SQLID[playerid], "Weed", 0, "players");
- format(gstr, sizeof(gstr), "* %s joga algumas buxas de Marijuana no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else if(strcmp("MoonShine",itemname,true) == 0)
- {
- if(Inventory[playerid][MoonShine] == 0) return SysMsg(playerid, "Você não tem Moonshine para dropar.");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- DropGun(playerid, 3, 1950, Inventory[playerid][MoonShine], Pos[0], Pos[1], Pos[2]+0.4, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid));
- Inventory[playerid][MoonShine] = 0;
- MySQLUpdateInt(SQLID[playerid], "MoonShine", 0, "players");
- format(gstr, sizeof(gstr), "* %s joga uma garrafa de MoonShine no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- return true;
- }
- else if(strcmp("Cocaina",itemname,true) == 0)
- {
- if(Inventory[playerid][Cocaine] == 0) return SysMsg(playerid, "Você não tem nenhuma cocaina para dropar.");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- new virtw = GetPlayerVirtualWorld(playerid);
- DropGun(playerid, 4, 1577, Inventory[playerid][Cocaine], Pos[0], Pos[1], Pos[2], virtw, GetPlayerInterior(playerid));
- Inventory[playerid][Cocaine] = 0;
- MySQLUpdateInt(SQLID[playerid], "Cocaine", 0, "players");
- format(gstr, sizeof(gstr), "* %s joga algumas cocainas no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- return true;
- }
- else if(strcmp("roupas",itemname,true) == 0)
- {
- if(sscanf(params, "s[20]s[50]", itemname, amount)) return SysMsg(playerid, "Use: /drop [roupas] [Slot]");
- new slot = strval(amount);
- if(slot < 1 || slot > 5) return SysMsg(playerid, "O slot deve ser entre 1 e 5.");
- slot --;
- if(Clothes[playerid][slot] == 0) return SysMsg(playerid, "Você não tem roupas nesse slot.");
- if(Clothes[playerid][slot] == cPlayersSkin[playerid]) return SysMsg(playerid, "Você não pode dropar uma roupa que estar usando.");
- Clothes[playerid][slot] = 0;
- slot ++;
- new str[10];
- format(str,sizeof(str),"SkinSet%i",slot);
- MySQLUpdateInt(SQLID[playerid], str, Clothes[playerid][slot-1], "players");
- format(gstr, sizeof(gstr), "Você dropou uma roupa do slot %i.", slot);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s joga algumas roupas no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- return true;
- }
- else if(strcmp("maleta",itemname,true) == 0)
- {
- if(Inventory[playerid][Briefcase] == 0) return SysMsg(playerid, "Você não tem uma maleta para dropar.");
- if(BriefcaseDropped[playerid] == 1) return SysMsg(playerid, "Você pode dropa apenas uma maleta.");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- GetXYInFrontOfPlayer(playerid, Pos[0], Pos[1], 3.0);
- Inventory[playerid][Briefcase] = 0;
- BriefcaseDropped[playerid] = 1;
- BriefcaseDropPos[playerid][0] = Pos[0];
- BriefcaseDropPos[playerid][1] = Pos[1];
- BriefcaseDropPos[playerid][2] = Pos[2];
- BriefcaseDropWorld[playerid][0] = GetPlayerVirtualWorld(playerid);
- BriefcaseDropWorld[playerid][1] = GetPlayerInterior(playerid);
- BriefcaseDropItems[playerid][0] = BriefcaseWeapon[playerid];
- BriefcaseDropItems[playerid][2] = BriefcaseCash[playerid];
- BriefcaseDropItems[playerid][3] = BriefcaseWeed[playerid];
- BriefcaseDropItems[playerid][4] = BriefcaseCocaine[playerid];
- BriefcaseWeapon[playerid] = 0;
- BriefcaseCash[playerid] = 0;
- BriefcaseWeed[playerid] = 0;
- BriefcaseCocaine[playerid] = 0;
- BriefcaseDropMisc[playerid][0] = BriefcaseLocked[playerid];
- BriefcaseDropMisc[playerid][1] = BriefcaseCode[playerid];
- BriefcaseLocked[playerid] = 0;
- BriefcaseCode[playerid] = 0;
- if(BriefcaseDropItems[playerid][2] > 0)
- {
- format(gstr, sizeof(gstr),"[%s] %s(%i) dropa uma maleta com $%i.", GetServerTimeString(), NameEx(playerid), playerid, BriefcaseDropItems[playerid][2]);
- AddToLog("cash", gstr);
- }
- for(new ao = 0; ao < 6; ao++)
- {
- if(AttachedObjects[playerid][ao][aoModelID] == 1210)
- {
- RemovePlayerAttachedObject(playerid, ao);
- AttachedObjects[playerid][ao][aoModelID] = 0;
- AttachedObjects[playerid][ao][aoBone] = 0;
- BriefcaseHolding[playerid] = 0;
- return true;
- }
- }
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasBriefcase = %i, BriefcaseWeapon = %i, BriefcaseCash = %i, BriefcaseWeed = %i, BriefcaseCocaine = %i, BriefcaseCode = %i, BriefcaseLocked = %i WHERE id = %i",
- Inventory[playerid][Briefcase], BriefcaseWeapon[playerid], BriefcaseCash[playerid], BriefcaseWeed[playerid], BriefcaseCocaine[playerid], BriefcaseCode[playerid], BriefcaseLocked[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- new labeltext[100], lockmessage[25];
- if(BriefcaseDropMisc[playerid][0] == 1) format(lockmessage, 25, "Locked");
- else format(lockmessage, 25, "Unlocked");
- if(BriefcaseHolding[playerid] > 0)
- {
- BriefcaseHolding[playerid] = 0;
- RemovePlayerAttachedObject(playerid, HOLD_OBJECT_BRIEFCASE);
- }
- format(labeltext, 100, "MALETA\nDropada por: %s\nStatus: %s\n(( Use /pegarmaleta para pegar ))", NameRP(playerid), lockmessage);
- BriefcaseDropText[playerid] = CreateDynamic3DTextLabel(labeltext, COLOR_WHITE, BriefcaseDropPos[playerid][0], BriefcaseDropPos[playerid][1], BriefcaseDropPos[playerid][2], 20.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, BriefcaseDropWorld[playerid][0], -1, -1, 25);
- BriefcaseDropPickup[playerid] = CreateDynamicPickup(1210, 23, Pos[0], Pos[1], Pos[2], BriefcaseDropWorld[playerid][0]);
- SendClientMessage(playerid, COLOR_WHITE, "Você jogou sua maleta no chão. (Qualquer um pode pegar agora)");
- format(gstr, sizeof(gstr), "* %s joga uma pasta no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- }
- else if(strcmp("celular", itemname, true) == 0)
- {
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid, "Você não tem um Celular para dropar.");
- if(IsPhoneRinging[playerid] == 1) return SysMsg(playerid,"Você não pode deixar cair o celula enquanto ele está tocando.");
- if(CallerID[playerid] != -1 || CallerService[playerid] != -1) return SysMsg(playerid,"Você não pode soltar o celular enquanto estiver usando-o.");
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- Inventory[playerid][MobilePhone] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossessor = 0, PhonePossession = 0 WHERE id = %i", PhoneData[playerid][pID]);
- mysql_pquery(conn, mquery);
- SendClientMessage(playerid, COLOR_WHITE, "Você dropou seu celular no chão, qualquer um pode pegar agora.");
- format(gstr, sizeof(gstr), "* %s joga seu celular no chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- DropGun(playerid, 6, 330, 1, X, Y, Z, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid));
- OnePlayAnim(playerid,"CARRY","putdwn",4,0,0,0,0,0);
- return true;
- }
- return true;
- }
- CMD:pegarmaleta(playerid, params[])//pegarmaleta
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode usar isso em um veículo.");
- if(Inventory[playerid][Briefcase] == 1) return SysMsg(playerid, "Você já tem uma pasta.");
- foreach(new i: Player)
- {
- if(Logged{i} && BriefcaseDropped[i] == 1)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, BriefcaseDropPos[i][0], BriefcaseDropPos[i][1], BriefcaseDropPos[i][2]) && GetPlayerVirtualWorld(playerid) == BriefcaseDropWorld[i][0] && GetPlayerInterior(playerid) == BriefcaseDropWorld[i][1])
- {
- Inventory[playerid][Briefcase] = 1;
- BriefcaseWeapon[playerid] = BriefcaseDropItems[i][0];
- BriefcaseCash[playerid] = BriefcaseDropItems[i][2];
- BriefcaseWeed[playerid] = BriefcaseDropItems[i][3];
- BriefcaseCocaine[playerid] = BriefcaseDropItems[i][4];
- BriefcaseCode[playerid] = BriefcaseDropMisc[i][1];
- BriefcaseLocked[playerid] = BriefcaseDropMisc[i][0];
- if(BriefcaseCash[playerid] > 0)
- {
- format(gstr, sizeof(gstr),"[%s] %s(%i) pegou uma maleta no chão com $%i. (Total: $%i)", GetServerTimeString(), NameEx(playerid), playerid, BriefcaseCash[playerid], Cash[playerid]);
- AddToLog("cash", gstr);
- }
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET HasBriefcase = %i, BriefcaseWeapon = %i, BriefcaseCash = %i, BriefcaseWeed = %i, BriefcaseCocaine = %i, BriefcaseCode = %i, BriefcaseLocked = %i WHERE id = %i",
- Inventory[playerid][Briefcase], BriefcaseWeapon[playerid], BriefcaseCash[playerid], BriefcaseWeed[playerid], BriefcaseCocaine[playerid], BriefcaseCode[playerid], BriefcaseLocked[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- BriefcaseDropItems[i][0] = 0;
- BriefcaseDropItems[i][1] = 0;
- BriefcaseDropItems[i][2] = 0;
- BriefcaseDropItems[i][3] = 0;
- BriefcaseDropItems[i][4] = 0;
- BriefcaseDropped[i] = 0;
- BriefcaseDropPos[i][0] = 0.0;
- BriefcaseDropPos[i][1] = 0.0;
- BriefcaseDropPos[i][2] = 0.0;
- BriefcaseDropWorld[i][0] = 0;
- BriefcaseDropWorld[i][1] = 0;
- BriefcaseDropMisc[i][1] = 0;
- BriefcaseDropMisc[i][0] = 0;
- DestroyDynamic3DTextLabel(BriefcaseDropText[i]);
- BriefcaseDropText[i] = Text3D:INVALID_3DTEXT_ID;
- DestroyDynamicPickup(BriefcaseDropPickup[i]);
- for(new ao = 0; ao < 6; ao++)
- {
- if(AttachedObjects[playerid][ao][aoModelID] == 0)
- {
- AttachedObjects[playerid][ao][aoModelID] = 1210;
- AttachedObjects[playerid][ao][aoBone] = 6;
- SetPlayerAttachedObject(playerid, ao, 19624, 6, 0.066999, 0.032000, 0.000000, -39.700004, -99.600051, 1.899998);
- break;
- }
- }
- BriefcaseHolding[playerid] = 1;
- SendClientMessage(playerid, COLOR_WHITE, "Você encontrou uma Pasta no chão e pegou. (Use /bcase para usar)");
- format(gstr, sizeof(gstr), "* %s pega uma maleta do chão. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- break;
- }
- }
- }
- return true;
- }
- CMD:pegaritem(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");//pegaritem
- for(new i = 0; i < MAX_GUNS; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, WeaponDrop[i][wX], WeaponDrop[i][wY], WeaponDrop[i][wZ]))
- {
- if(GetPlayerVirtualWorld(playerid) == WeaponDrop[i][DropvWorld] && GetPlayerInterior(playerid) == WeaponDrop[i][DropInt])
- {
- if(WeaponDrop[i][Type] == 2)
- {
- Inventory[playerid][Weed] += WeaponDrop[i][DropAmmo];
- WeaponDrop[i][wX] = 0.0;
- WeaponDrop[i][wY] = 0.0;
- WeaponDrop[i][wZ] = 0.0;
- WeaponDrop[i][DropModel] = 0;
- WeaponDrop[i][DropAmmo] = 0;
- WeaponDrop[i][DropvWorld] = 0;
- WeaponDrop[i][DropInt] = 0;
- WeaponDrop[i][gSpawned] = 0;
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- DestroyDynamicObjectEx(DropObject[i], "DropObject[i]");
- DropObject[i] = INVALID_OBJECT_ID;
- SendClientMessage(playerid, COLOR_WHITE, "Você pegou um maço de Marijuana do chão.");
- break;
- }
- else if(WeaponDrop[i][Type] == 3)
- {
- Inventory[playerid][MoonShine] += WeaponDrop[i][DropAmmo];
- WeaponDrop[i][wX] = 0.0;
- WeaponDrop[i][wY] = 0.0;
- WeaponDrop[i][wZ] = 0.0;
- WeaponDrop[i][DropModel] = 0;
- WeaponDrop[i][DropAmmo] = 0;
- WeaponDrop[i][DropvWorld] = 0;
- WeaponDrop[i][DropInt] = 0;
- WeaponDrop[i][gSpawned] = 0;
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- DestroyDynamicObjectEx(DropObject[i], "DropObject[i]");
- SendClientMessage(playerid, COLOR_WHITE, "Você pegou uma garrafa de aguardente do chão.");
- break;
- }
- else if(WeaponDrop[i][Type] == 4)
- {
- Inventory[playerid][Cocaine] += WeaponDrop[i][DropAmmo];
- WeaponDrop[i][wX] = 0.0;
- WeaponDrop[i][wY] = 0.0;
- WeaponDrop[i][wZ] = 0.0;
- WeaponDrop[i][DropModel] = 0;
- WeaponDrop[i][DropAmmo] = 0;
- WeaponDrop[i][DropvWorld] = 0;
- WeaponDrop[i][DropInt] = 0;
- WeaponDrop[i][gSpawned] = 0;
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- DestroyDynamicObjectEx(DropObject[i], "DropObject[i]");
- DropObject[i] = INVALID_OBJECT_ID;
- SendClientMessage(playerid, COLOR_WHITE, "Você pegou um maço de cocaína do chão.");
- break;
- }
- else if(WeaponDrop[i][Type] == 6)
- {
- if(Inventory[playerid][MobilePhone] == 1) return SysMsg(playerid, "Você já possui um celular móvel.");
- WeaponDrop[i][wX] = 0.0;
- WeaponDrop[i][wY] = 0.0;
- WeaponDrop[i][wZ] = 0.0;
- WeaponDrop[i][DropModel] = 0;
- WeaponDrop[i][DropAmmo] = 0;
- WeaponDrop[i][DropvWorld] = 0;
- WeaponDrop[i][DropInt] = 0;
- WeaponDrop[i][gSpawned] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE phones SET PhonePossessor = %i, PhonePossession = 1 WHERE id = %i", SQLID[playerid], WeaponDrop[i][PhoneID]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM phones WHERE id = %i", WeaponDrop[i][PhoneID]);
- mysql_pquery(conn, mquery, "LoadPlayerPhone", "d", playerid);
- WeaponDrop[i][PhoneID] = 0;
- WeaponDrop[i][DropPhoneNumber] = 0;
- WeaponDrop[i][DropPhonePower] = 0;
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- DestroyDynamicObjectEx(DropObject[i], "DropObject[i]");
- DropObject[i] = INVALID_OBJECT_ID;
- SendClientMessage(playerid, COLOR_WHITE, "Você pegou um celular do chão, use /cinfo para ver as informações do celular.");
- }
- else if(WeaponDrop[i][Type] == 1)
- {
- if(!IsPlayerAdmin(playerid) && IsBanWeapon(WeaponDrop[i][DropModel])) return SysMsg(playerid, "Você não pode pegar esta arma.");
- if(GetFreeWeaponObjectIndex(playerid) == -1) return SysMsg(playerid, "Você não pode carregar outra arma agora.");
- if(WeaponDrop[i][DropModel] == 14) UnlockAchievement(playerid, 48);
- if(!WeaponCheck(playerid, WeaponDrop[i][DropModel])) return SysMsg(playerid, "Você não pode pegar essa arma, ou tens duas pistolas ou uma arma primária e uma pistola na tua pessoa.");
- if(WeaponData[playerid][GetWeaponSlot(WeaponDrop[i][DropModel])][Weapon] != 0) return SysMsg(playerid, "Você já está carregando uma arma desse tipo.");
- new slot = GetWeaponSlot(WeaponDrop[i][DropModel]);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM weapons WHERE id = %i", WeaponDrop[i][DropWeaponID]);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows())
- {
- WeaponData[playerid][slot][WeaponID] = cache_get_field_content_int(0, "id");
- WeaponData[playerid][slot][WeaponTimestamp] = cache_get_field_content_int(0, "Timestamp");
- WeaponData[playerid][slot][wCreatorSQLID] = cache_get_field_content_int(0, "CreatorSQLID");
- WeaponData[playerid][slot][Weapon] = cache_get_field_content_int(0, "WeaponID");
- WeaponData[playerid][slot][wOwnerSQLID] = cache_get_field_content_int(0, "OwnerSQLID");
- WeaponData[playerid][slot][WeaponAmmo] = cache_get_field_content_int(0, "WeaponAmmo");
- WeaponData[playerid][slot][WeaponType] = GetWeaponType(WeaponData[playerid][slot][Weapon]);
- WeaponData[playerid][slot][WeaponOrigin] = cache_get_field_content_int(0, "WeaponOrigin");
- WeaponData[playerid][slot][WeaponPossession] = cache_get_field_content_int(0, "WeaponPossession");
- }
- cache_delete(result);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET OwnerSQLID = %i, WeaponPossession = 1, Dropped = 0 WHERE id = %i", SQLID[playerid], WeaponData[playerid][slot][WeaponID]);
- mysql_pquery(conn, mquery);
- WeaponDrop[i][wX] = 0.0;
- WeaponDrop[i][wY] = 0.0;
- WeaponDrop[i][wZ] = 0.0;
- WeaponDrop[i][DropModel] = 0;
- WeaponDrop[i][DropWeaponID] = 0;
- WeaponDrop[i][DropAmmo] = 0;
- WeaponDrop[i][DropvWorld] = 0;
- WeaponDrop[i][DropInt] = 0;
- WeaponDrop[i][gSpawned] = 0;
- SyncPlayerWeapons(playerid);
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- DestroyDynamicObjectEx(DropObject[i], "DropObject[i]");
- DropObject[i] = INVALID_OBJECT_ID;
- SendClientMessageF(playerid, COLOR_WHITE, "Você pegou %s do chão.", weaponstring[WeaponData[playerid][slot][Weapon]]);
- break;
- }
- }
- }
- }
- for(new d = 1; d < MAX_DRUGS; d++) //drug comment
- {
- if(DrugTakenData[d][effActive] == 2)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, DrugTakenData[d][drugPos][0], DrugTakenData[d][drugPos][1], DrugTakenData[d][drugPos][2] + 1.0))
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM drugs WHERE drugOwner = %d AND drugEffects = '%s' AND drugComedown = '%s' AND drugQuality = %d", SQLID[playerid], DrugTakenData[d][drugEffects], DrugTakenData[d][drugComedown], DrugTakenData[d][drugsQuality]);
- mysql_pquery(conn, mquery, "PickupDrug", "ii", playerid, d);
- break;
- }
- }
- }
- for(new d = 1; d < MAX_INGREDIENTS; d++)
- {
- if(IngredientsData[d][ingredPos][0] != 0.0 && IngredientsData[d][ingredPos][1] != 0.0)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, IngredientsData[d][ingredPos][0], IngredientsData[d][ingredPos][1], IngredientsData[d][ingredPos][2] + 1.0))
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM ingredients WHERE ingOwner = %d AND ingType = %d", SQLID[playerid], IngredientsData[d][ingredType]);
- mysql_pquery(conn, mquery, "PickupIngredient", "ii", playerid, d);
- break;
- }
- }
- }
- for(new tein = 0; tein < sizeof(TestIngred); tein++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.5, TestIngred[tein][tePos][0], TestIngred[tein][tePos][1], TestIngred[tein][tePos][2]))
- {
- SendClientMessageF(playerid, COLOR_YELLOW, "Você pegou 20 %s do chão para fins de testa.", IngredName[TestIngred[tein][teDrugType]]);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM ingredients WHERE ingOwner = %d AND ingType = %d", SQLID[playerid], TestIngred[tein][teDrugType]);
- mysql_pquery(conn, mquery, "PickupTestIngredient", "dd", playerid, TestIngred[tein][teDrugType]);
- break;
- }
- }
- return true;
- }
- CMD:caridade(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"/caridade [quantidade]");
- new amount = strval(params);
- if(amount < 1 || amount > Cash[playerid]) return SysMsg(playerid,"O valor deve ser entre 1 e seu dinheiro deve estar na mão.");
- GivePlayerCash(playerid, -amount);
- MySQLUpdateInt(SQLID[playerid], "Cash", amount, "players");
- LotteryJackpot += amount;
- if(amount > 999) UnlockAchievement(playerid, 40);
- SendClientMessageF(playerid, COLOR_PINK, "Você deu $%s do seu dinheiro. O dinheiro foi arrecadado para o próximo jogo do /Jackpot.", format_cash(amount));
- format(gstr, sizeof(gstr),"[%s] %s(%i) colocou $%i à caridade. (Total: $%i)", GetServerTimeString(), NameEx(playerid), playerid, amount, Cash[playerid]);
- AddToLog("cash", gstr);
- return true;
- }
- CMD:jackpot(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- SendClientMessageF(playerid, COLOR_PINK, "Loteria jackpot: {FFFFFF}$%s", format_cash(LotteryJackpot));
- if(LotteryNumber[playerid] != -1) SendClientMessageF(playerid, COLOR_PINK, "O número do seu bilhete para o próximo sorteio é {FFFFFF}%i.", LotteryNumber[playerid]);
- else SendClientMessage(playerid, COLOR_PINK, "Você não foi inscrito para o próximo sorteio.");
- return true;
- }
- CMD:destruirdinheiro(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid, "Você deve estar logado.");
- if(Cash[playerid] < 0) return SysMsg(playerid, "Você deve ter dinheiro na mão para usar esse comando.");
- new monies, conf[12];
- if(sscanf(params, "iS()[12]", monies, conf)) return SysMsg(playerid, "Use: /destruirdinheiro [quantidade] *ESSA QUANTIDADE DE DINHEIRO SERÁ DELETADA E NÃO É POSSIVEL RECUPERAR.*");
- if(isnull(conf)) return SendClientMessageF(playerid, COLOR_WHITE, "Usando este comando irá excluir $%s do seu dinheiro da mão. Escreva /destruirdinheiro %i confirmar para continuar.", format_cash(monies), monies);
- if(strmatch(conf, "confirmar") && monies >= 1)
- {
- if(Cash[playerid] - monies < 0) return SysMsg(playerid, "Subtrair esse muito dinheiro do seu dinheiro na mão iria colocá-lo em um saldo negativo.");
- GivePlayerCash(playerid, -monies);
- SendClientMessageF(playerid, COLOR_WHITE, "Você enviou $%s para o vazio.", format_cash(monies));
- return true;
- }
- return true;
- }
- CMD:hesoyam(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- UnlockAchievement(playerid, 26);
- return true;
- }
- CMD:hegebe(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- UnlockAchievement(playerid, 60);
- return true;
- }
- CMD:nametags(playerid, params[])
- {
- if(nameshidden[playerid] == 0)
- {
- foreach(new i: Player) ShowPlayerNameTagForPlayer(playerid, i, false);
- nameshidden[playerid] = 1;
- SysMsg(playerid,"Você desabilitou o name tag; Use /nametags para habilidade.");
- }
- else
- {
- foreach(new i: Player) if(!MaskHideName{i}) ShowPlayerNameTagForPlayer(playerid, i, true);
- nameshidden[playerid] = 0;
- SysMsg(playerid,"Você já habilitou etiquetas de nome de jogador; Use /nametags para desabilitar.");
- }
- return true;
- }
- CMD:me(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /me [ação]");
- new Float:radius = 20.0, occupants;
- if(IsInHouseID[playerid] != -1) occupants = HouseData[IsInHouseID[playerid]][HouseOccupants];
- else if(IsInBizzID[playerid] != -1) occupants = BizzData[IsInBizzID[playerid]][BizzOccupants];
- if(occupants < 10) radius = 20.0;
- else if(occupants < 20) radius = 10.0;
- else radius = 5.0;
- format(gstr, sizeof(gstr),"%s %s", NameRP(playerid), params);
- ProxDetector(radius, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- totalmes ++;
- return true;
- }
- CMD:ame(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /ame [ação]");
- SetPlayerChatBubble(playerid, params, COLOR_EMOTE, 15.0, 6000);
- SendClientMessageF(playerid, COLOR_EMOTE, "Mensagem Anotada: %s", params);
- return true;
- }
- CMD:ame2(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /ame [ação]");
- SetPlayerChatBubble(playerid, params, COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- CMD:do(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /do [ação]");
- new Float:radius = 20.0, occupants;
- if(IsInHouseID[playerid] != -1) occupants = HouseData[IsInHouseID[playerid]][HouseOccupants];
- else if(IsInBizzID[playerid] != -1) occupants = BizzData[IsInBizzID[playerid]][BizzOccupants];
- if(occupants < 10) radius = 20.0;
- else if(occupants < 20) radius = 10.0;
- else radius = 5.0;
- format(sgstr, sizeof(sgstr), "%s ((%s))", params, NameRP(playerid));
- ProxDetector(radius, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:tentar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /tentar [ação]");
- new success = random(50);
- if(success < 25) format(sgstr, sizeof(sgstr), "* %s tentou %s e conseguiu. *", NameRP(playerid), params);
- else format(sgstr, sizeof(sgstr), "* %s tentou %s e não conseguiu. *", NameRP(playerid), params);
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:sdo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerAdmin(playerid)) return false;
- if(isnull(params)) return SysMsg(playerid,"Use: /sdo [ação]");
- ProxDetector(20.0, playerid, params, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:acento(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /acento [sotaque] - Examplo: 'Italiano'. Use 'nenhum' para remover o sotaque.");
- if(strlen(params) > 11) return SysMsg(playerid,"Sotaque era muito longo (max 11 characters).");
- if(strlen(params) < 3) return SysMsg(playerid,"Sotaque muito curto (min 3 characters).");
- if(strcmp("nenhum", params, true) == 0)
- {
- if(UsingAccent[playerid] == 0) return SysMsg(playerid,"Você não tem um sotaque.");
- Accent[playerid][0] = EOS;
- UsingAccent[playerid] = 0;
- MySQLUpdateString(SQLID[playerid], "Accent", Accent[playerid], "players");
- SendClientMessage(playerid, COLOR_WHITE, "Você removeu seu sotaque.");
- return true;
- }
- new acc[10]; format(acc, sizeof(acc), params);
- UsingAccent[playerid] = 1;
- format(Accent[playerid], 12, params);
- MySQLUpdateString(SQLID[playerid], "Accent", Accent[playerid], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Seu acento é: %s. Use '/acento nenhum' para remover.", Accent[playerid]);
- UnlockAchievement(playerid,25);
- return true;
- }
- CMD:aparencia(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /aparencia [descrição]");
- if(strlen(params) - 12 > 128) return SysMsg(playerid,"Use uma descrição de aparência mais curta.");
- if(strcmp(params, "nenhuma", true) == 0)
- {
- Appearance[playerid][0] = EOS;
- MySQLUpdateString(SQLID[playerid], "LooksLike", Appearance[playerid], "players");
- SendClientMessage(playerid, COLOR_WHITE, "A descrição da aparência foi removida.");
- return true;
- }
- format(Appearance[playerid], 128, params);
- MySQLUpdateString(SQLID[playerid], "LooksLike", Appearance[playerid], "players");
- SendClientMessageF(playerid, COLOR_WHITE, "Sua aparência é agora: '%s'. Use '/aparencia nenhuma' para remover isso.", Appearance[playerid]);
- return true;
- }
- CMD:descrever(playerid, params[])//observar
- {
- if(!Logged{playerid}) return true;
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /descrever [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(strlen(Appearance[playa]) == 0) return SysMsg(playerid,"O jogador não tem descrição para ver.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.0,tX,tY,tZ) && IsSpectating[playa] != -1) return SysMsg(playerid,"Você deve estar perto do jogador.");
- format(gstr, sizeof(gstr), "* %s * (%s)", Appearance[playa], NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:checkid(playerid, params[])
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- new v = GetPlayerVehicleID(playerid);
- if(VehicleData[v][VehicleOwnerSQLID] != 0)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "[Veiculo ID] %s - ID %i", GetVehicleName(v), VehicleData[v][VehSQLID]);
- return true;
- }
- if(FVehicleData[v][FactionVehID] == v)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "[Veiculo de facção ID] %s - ID %i, Criador: %s", GetVehicleName(v), FVehicleData[v][FVSQLID], GetSQLName(GetFactionVehicleCreator(FVehicleData[v][FVSQLID])));
- return true;
- }
- }
- for(new p = 0; p < MAX_SQLPICKUPS; p++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, PickupData[p][Xpos], PickupData[p][Ypos], PickupData[p][Zpos]))
- {
- SendClientMessageF(playerid, COLOR_WHITE, "[Pickup ID] - ID %i", PickupData[p][PickupSQLID]);
- return true;
- }
- }
- for(new int = 0; int < MAX_INTERIORS; int++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, Interiors[int][oPosX], Interiors[int][oPosY], Interiors[int][oPosZ]))
- {
- SendClientMessageF(playerid, COLOR_WHITE, "[Interior ID] ID %i", Interiors[int][interiorID]);
- return true;
- }
- }
- for(new b = 0; b < MAX_BIZZ; b++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, BizzData[b][oPosX], BizzData[b][oPosY], BizzData[b][oPosZ]))
- {
- SendClientMessageF(playerid, COLOR_WHITE, "[Negocio ID] %s - ID %i", BizzData[b][BizzDescription], BizzData[b][BizzSQLID]);
- return true;
- }
- }
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- SendClientMessageF(playerid, COLOR_WHITE, "[Casa ID] %s - ID %i", HouseData[h][HouseDescription], HouseData[h][HouseSQLID]);
- return true;
- }
- }
- for(new g = 0; g < MAX_GARAGES; g++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, GarageData[g][oPosX], GarageData[g][oPosY], GarageData[g][oPosZ]) && GetPlayerVirtualWorld(playerid) == GarageData[g][oVirtualWorld])
- {
- SendClientMessageF(playerid, COLOR_WHITE, "[Garagem ID] ID %i", GarageData[g][gID]);
- return true;
- }
- }
- SysMsg(playerid, "Nada foi encontrado.");
- return true;
- }
- CMD:getid(playerid, params[])
- {
- if(isnull(params)) return SysMsg(playerid,"Use: /id [Parte/Nome completo do jogador]");
- if(strlen(params) < 3) return SysMsg(playerid,"Use: /id [Parte/Nome completo do jogador]");
- new count = 0;
- foreach(new i: Player)
- {
- if(strfind(GetName(i), params, true) != -1)
- {
- count ++;
- SendClientMessageF(playerid, COLOR_WHITE, "%s - ID %i", NameEx(i), i);
- }
- }
- if(count == 0) SysMsg(playerid, "Não foi encontrado nenhum jogador com esse nome.");
- return true;
- }
- CMD:id(playerid, params[]) return cmd_getid(playerid, params);
- CMD:kill(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(Dead{playerid}) return SendClientMessage(playerid, COLOR_RED, "Você já está morto.");
- if(IsJailed[playerid] == 1 || AdminJailData[playerid][0] == 1) return true;
- if(IsCuffed[playerid] == 1) return true;
- if(isnull(params))
- {
- SetPlayerHealthEx(playerid, 0.0);
- SetPlayerArmourEx(playerid, 0.0, 0);
- SetPlayerChatBubble(playerid, "(( O player usou /kill ))", COLOR_ORANGE, 15.0, 5000);
- format(gstr, sizeof(gstr),"[Death - System] %s usou o comando /kill", NameEx(playerid));
- AdminBroadcast(gstr, 1);
- }
- else
- {
- if(!IsPlayerAdminLevelOK(playerid, 3)) return SysMsg(playerid, AUTHMSG);
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /kill [player id ou nome]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- SetPlayerHealthEx(playa,0.0);
- SetPlayerArmourEx(playa,0.0, 0);
- format(gstr, sizeof(gstr),"Admin %s matou você com comando admin.",NameEx(playerid));
- SendClientMessage(playa,COLOR_RED,gstr);
- format(gstr, sizeof(gstr),"Você matou %s.",NameEx(playa));
- SendClientMessage(playerid,COLOR_LIGHTRED,gstr);
- format(gstr, sizeof(gstr),"[Death - System] Admin %s mantou %s ", NameEx(playerid), NameEx(playa));
- AdminBroadcast(gstr, 1);
- SetPlayerChatBubble(playa, "(( Admin usou /kill neste player ))", COLOR_ORANGE, 15.0, 5000);
- }
- return true;
- }
- CMD:hora(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Watch] == 0) return SysMsg(playerid,"Você não tem um relógio.");
- new StNdRdTh[4], Year, Month, Day;
- getdate(Year, Month, Day);
- StNdRdTh = "";
- if(Day == 1||Day == 21||Day == 31) StNdRdTh = "";
- else if(Day == 2||Day == 22) StNdRdTh = "";
- else if(Day == 3||Day == 23) StNdRdTh = "";
- SysMsgF(playerid, "Hora atual: %s, Data de hoje: %i%s de %s %i", GetTimeString(), Day, StNdRdTh, GetMonthName(Month), gServerYear);
- format(gstr, sizeof(gstr),"* %s olha para seu relógio. *", NameRP(playerid));
- ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(!IsPlayerInAnyVehicle(playerid)) OnePlayAnim(playerid, "PLAYIDLES", "time", 3.0, 0, 0, 0, 0, 0);
- return true;
- }
- CMD:date(playerid, params[]) return cmd_hora(playerid, params);
- CMD:showtime(playerid, params[])//showtime
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Watch] == 0) return SysMsg(playerid,"Você não tem um relógio.");
- if(TimeIsDisplayed{playerid} != 0)
- {
- TextDrawHideForPlayer(playerid, TimeText);
- TextDrawHideForPlayer(playerid, TimeText24);
- TimeIsDisplayed{playerid} = 0;
- SysMsg(playerid,"Exibição de tempo oculta.");
- }
- else
- {
- if(isnull(params) || !IsNumeric(params)) return SysMsg(playerid, "Use: /hora [24/12]");
- if(strval(params) == 12) TextDrawShowForPlayer(playerid, TimeText);
- else if(strval(params) == 24) TextDrawShowForPlayer(playerid, TimeText24);
- TimeIsDisplayed{playerid} = true;
- SysMsg(playerid,"Time Display On.");
- }
- return true;
- }
- CMD:togpay(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!CheckReady{playerid}) return SysMsg(playerid,"Você não tem um Payday pendente.");
- if(PaycheckDisplayed{playerid})
- {
- PlayerTextDrawHide(playerid, Signcheck[playerid]);
- PaycheckDisplayed{playerid} = false;
- SysMsg(playerid,"Você escondeu seu Payday, use o mesmo comando para exebi-lo na sua tela.");
- }
- else
- {
- format(gstr, sizeof(gstr), "~g~~h~~h~Payday: ~w~%i", CheckNumber[playerid]);
- PlayerTextDrawSetString(playerid, Signcheck[playerid], gstr);
- PlayerTextDrawShow(playerid, Signcheck[playerid]);
- PaycheckDisplayed{playerid} = true;
- SysMsg(playerid,"Seu Payday está aparecendo novamente, use o mesmo comando para ocultar.");
- }
- return true;
- }
- CMD:pedagio(playerid, params[])
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- new trailer = GetVehicleTrailer(vehicleid);
- new Float:rot[3];
- for(new pt = 0; pt < sizeof(PaytollPos); pt++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, PaytollPos[pt][0], PaytollPos[pt][1], PaytollPos[pt][2])) // RC-BC 1
- {
- new Float:pos[3];
- GetDynamicObjectPos(PayTolls[pt][0], pos[0], pos[1], pos[2]);
- GetDynamicObjectRot(PayTolls[pt][0], rot[0], rot[1], rot[2]);
- if(vehicleid == 0) return SysMsg(playerid, "Somente os veículos têm que pagar pedágio e você não está em um.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid, "Somente o motorista pode pagar o pedágio.");
- if(PayTolls[pt][1] == 1) return SysMsg(playerid, "A porta de pedágio já está aberta.");
- if(trailer > 0)
- {
- if(Cash[playerid] < 10) return SysMsg(playerid, "Você não tem dinheiro suficiente para pagar o pedágio. (Você precisa de $10)");
- GivePlayerCash(playerid, -10);
- format(gstr, sizeof(gstr), "[Toll - "COL_MONEYGREEN"$10{FFFFFF}] Bem vindo a %s. Dirija com segurança. [Trailer/towing a taxa é $5]", PaytollNames[pt]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- else
- {
- if(!QualifiesForFreeToll(playerid))
- {
- if(Cash[playerid] < 5) return SysMsg(playerid, "Você não tem dinheiro suficiente para pagar o pedágio. (Você precisa de $5)");
- GivePlayerCash(playerid, -5);
- format(gstr, sizeof(gstr), "[Toll - "COL_MONEYGREEN"$5{FFFFFF}] Bem vindo a %s. Dirija com segurança.", PaytollNames[pt]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- else
- {
- format(gstr, sizeof(gstr), "[Toll - "COL_MONEYGREEN"$0{FFFFFF}] Bem vindo a %s. Você qualifica para pedágios gratuitos. Dirija com segurança.", PaytollNames[pt]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- }
- MoveDynamicObject(PayTolls[pt][0], pos[0], pos[1], pos[2]+0.001, 0.0005, rot[0], 0.0, rot[2]);
- PayTolls[pt][1] = 1;
- PaytollCloseTimer[pt] = SetTimerEx("CloseTollGate", 7000, 0, "df", pt, 90.0);
- }
- }
- return true;
- }
- CMD:banco(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(!IsInBank(playerid)) return SysMsg(playerid, "Você não está em um banco.");
- UsingATM{playerid} = false;
- Dialog_Show(playerid,BankMenu,DIALOG_STYLE_LIST,"{3D9140}Gerênciamento bancário","Balance\nDeposito\nSaque\nTransferência","Continuar","Cancelar");
- return true;
- }
- CMD:fbalance(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(!IsInBank(playerid)) return SysMsg(playerid, "You are not in a bank");
- if(Faction[playerid] < 1) return SysMsg(playerid,"Você não está em uma facção.");
- SendClientMessageF(playerid, COLOR_WHITE, "Equilíbrio bancário da facção {0098F2}%s{FFFFFF} - {4BB74C}$%s.", GetFactionName(playerid), format_cash(FACTIONS[Faction[playerid]][FactionBankBalance]));
- return true;
- }
- CMD:fdepositar(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(!IsInBank(playerid)) return SysMsg(playerid, "Você não está em um banco");
- if(Faction[playerid] < 1) return SysMsg(playerid,"Você não está em uma facção.");
- new amount;
- if(sscanf(params, "i", amount)) return SysMsg(playerid,"Use: /fdepositar [Quantidade]");
- if(amount < 1) return SysMsg(playerid,"Quantidade Inválida, Must be greater that 0.");
- if(amount > Cash[playerid]) return SysMsg(playerid,"Você não tem essa quantidade");
- GivePlayerCash(playerid, -amount);
- SendClientMessageF(playerid, COLOR_WHITE, "[Deposito] Equilíbrio bancário da facção {0098F2}%s{FFFFFF}:", GetFactionName(playerid));
- SendClientMessageF(playerid, COLOR_WHITE, "[Deposito] Balance Antigo: {4BB74C}$%s{FFFFFF}, Novo Balance: {4BB74C}$%s{FFFFFF}.", format_cash(FACTIONS[Faction[playerid]][FactionBankBalance]), format_cash(FACTIONS[Faction[playerid]][FactionBankBalance]+amount));
- FACTIONS[Faction[playerid]][FactionBankBalance] += amount;
- MySQLUpdateInt(FACTIONS[Faction[playerid]][FactionId], "BankBalance", FACTIONS[Faction[playerid]][FactionBankBalance], "factions");
- format(gstr, sizeof(gstr),"[%s] %s(%i) colocou $%i na fbank %s. (Total: $%i)", GetServerTimeString(), NameEx(playerid), playerid, amount, GetFactionName(playerid), Cash[playerid]);
- AddToLog("cash", gstr);
- return true;
- }
- //Comandos Leader Facção
- CMD:fpagar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- new playa = -1,PayCash;
- if(sscanf(params, "ui", playa, PayCash)) return SysMsg(playerid,"Use: /fpagar [ID ou nome do jogador] [Quantidade a pagar]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(Faction[playerid] != Faction[playa]) return SysMsg(playerid,"Esse jogador não está na mesma facção que você");
- if(PayCash < 100 || PayCash > 100000) return SysMsg(playerid,"O dinheiro deve ser menos que $100 e $100,000");
- if(FACTIONS[Faction[playerid]][FactionBankBalance] < PayCash) return SysMsg(playerid,"Você não tem essa quantidade de dinheiro no banco da facção.");
- FACTIONS[Faction[playerid]][FactionBankBalance] -= PayCash;
- BankBalance[playa] += PayCash;
- MySQLUpdateInt(FACTIONS[Faction[playerid]][FactionId], "BankBalance", FACTIONS[Faction[playerid]][FactionBankBalance], "factions");
- MySQLUpdateInt(SQLID[playa], "Bank", BankBalance[playa], "players");
- SendClientMessageF(playerid, COLOR_LIGHTGREEN, "[DECLARAÇÃO DO BANCO DE FACÇÃO] %s - %s(Rank: %s)",GetFactionName(playerid),NameEx(playerid),GetFactionRankName(Faction[playerid], FactionRank[playerid]));
- SendClientMessageF(playerid, COLOR_LIGHTGREEN, " 1. Transferir: PARA %s DE %s - $%i.",NameEx(playa),GetFactionName(playerid),PayCash);
- SendClientMessageF(playerid, COLOR_LIGHTGREEN, " 2. Novo balance de facção: $%i.",FACTIONS[Faction[playerid]][FactionBankBalance]);
- SendClientMessageF(playa, COLOR_LIGHTGREEN, "[PAGAMENTO DIÁRIO DA FACÇÃO] %s - %s(Rank: %s)",GetFactionName(playa),NameEx(playa),GetFactionRankName(Faction[playa], FactionRank[playa]));
- SendClientMessageF(playa, COLOR_LIGHTGREEN, " 1. Deposito: %s %s - $%i.",GetFactionRankName(Faction[playerid], FactionRank[playerid]),NameEx(playerid),PayCash);
- SendClientMessageF(playa, COLOR_LIGHTGREEN, " 2. Balance: $%i.",BankBalance[playa]);
- printf("[Cmd] %s %s pagou %s $%i (FactionPay)",GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid), NameEx(playa), PayCash);
- return true;
- }
- CMD:fsave(playerid, params[])//salva posição do veiculo
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado para usar esta ferramenta.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- if(GetPlayerVehicleID(playerid) == 0) return SysMsg(playerid, "Você nem está em um veículo.");
- if(IsFactionVehicle(GetPlayerVehicleID(playerid)) == 0) return SysMsg(playerid, "Esse veiculo não é de uma facção");
- new vehicle = GetPlayerVehicleID(playerid), faction = IsFactionVehicle(vehicle);
- if((faction > 0 && Faction[playerid] != faction) && !IsPlayerAdmin(playerid)) return SysMsg(playerid,"Você não pode editar esse veiculo de facção");
- if(faction > 0)
- {
- new factionSQLID = vehicle;
- if(factionSQLID == -1) return SysMsg(playerid, "Oops! Ocorreu um erro no sistema, informe para um administrador. (ERROR: 4-001)");
- new Float:X, Float:Y, Float:Z, Float:R, inter, vw;
- GetVehiclePos(vehicle, X, Y, Z);
- GetVehicleZAngle(vehicle, R);
- inter = GetPlayerInterior(playerid);
- vw = GetPlayerVirtualWorld(playerid);
- new sqlid = FVehicleData[vehicle][FVSQLID];
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE fveh SET LocationX = %f, LocationY = %f, LocationZ = %f, LocationR = %f, VWorld = %i, Interior = %i WHERE id = %i", X, Y, Z, R, vw, inter, FVehicleData[vehicle][FVSQLID]);
- mysql_tquery(conn, mquery);
- DestroyVehicleEx(vehicle, "vehicle");
- ClearVehicleData(vehicle);
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM fveh WHERE id = %i", sqlid);
- mysql_tquery(conn, mquery, "LoadFactionVehicles");
- new Float:pX,Float:pY,Float:pZ;
- GetPlayerPos(playerid,pX,pY,pZ);
- SetPlayerPos(playerid,pX,pY,(pZ+5.0));
- SendClientMessage(playerid, COLOR_WHITE, "O veículo de facção foi salvo aqui.");
- }
- return true;
- }
- CMD:contratarfac(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não é uma patente alta o suficiente.");
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /contratarfac [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode se contratar.");
- if(!Logged{playa}) return SysMsg(playerid,"Esse jogador não logou/registou.");
- if(Faction[playa] != 0) return SysMsg(playerid,"Esse jogador já está em uma facção.");
- InvitedToJoinFaction[playa] = Faction[playerid];
- InvitedToJoinFactionBy[playa] = SQLID[playerid];
- format(gstr, sizeof(gstr),"Você foi convidado por %s para se juntar à sua facção: %s. Use '/aceitar facção' para entrar.",NameEx(playerid),GetFactionName(playerid));
- SendClientMessage(playa,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Você convidou %s para se juntar à sua Fação.",NameEx(playa));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- return true;
- }
- CMD:rebaixarrank(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- if(isnull(params)) return SysMsg(playerid,"Use: /rebaixarrank [Nome_Sobrenome]");
- if(strmatch(params, GetName(playerid))) return SysMsg(playerid, "Você não pode se rebaixar.");
- foreach(new p: Player)
- {
- if(strmatch(params, GetName(p)))
- {
- if(IsPlayerConnected(p) && Logged{p})
- {
- if(Faction[p] != Faction[playerid]) return SysMsg(playerid, "Você não pode rebaixar alguém que não está na sua facção.");
- if(FactionRank[p] >= FactionRank[playerid]) return SysMsg(playerid, "Você não pode rebaixar alguem que tem o Rank superior ao seu.");
- if(FactionRank[p] == 1) return SysMsg(playerid, "Essa pessoa já são o rank mais baixo possível.");
- FactionRank[p] --;
- MySQLUpdateInt(SQLID[p], "FactionRank", FactionRank[p], "players");
- format(gstr, sizeof(gstr),"%s %s rebaixou você, agora você é rank %i(%s).", GetFactionRankName(Faction[playerid], FactionRank[playerid]),NameEx(playerid),FactionRank[p],GetFactionRankName(Faction[p], FactionRank[p]));
- SendClientMessage(p,COLOR_ORANGE,gstr);
- format(gstr, sizeof(gstr),"Você rebaixou %s! Eles são agora rank %i(%s)", NameEx(p), FactionRank[p] ,GetFactionRankName(Faction[playerid], FactionRank[p]));
- SendClientMessage(playerid,COLOR_ORANGE,gstr);
- return true;
- }
- else return SysMsg(playerid, "Esse jogador não está conectado ou ainda não fez login, tente novamente.");
- }
- }
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id, Faction, FactionRank, Name FROM players WHERE Name = '%e' LIMIT 1", params);
- mysql_pquery(conn, mquery, "DemoteF", "d", playerid);
- return true;
- }
- GREENSIDE::DemoteF(playerid)
- {
- if(cache_num_rows())
- {
- new currentFaction, currentRank, actualName[50], sqlid;
- sqlid = cache_get_field_content_int(0, "id");
- currentFaction = cache_get_field_content_int(0, "Faction");
- currentRank = cache_get_field_content_int(0, "FactionRank");
- cache_get_field_content(0, "Name", actualName);
- if(Faction[playerid] != currentFaction) return SysMsg(playerid,"Esse jogador não está na mesma facção que você");
- if(currentRank == 1) return SysMsg(playerid,"Eles já são o mais baixo nível.");
- if(currentRank >= FactionRank[playerid]) return SysMsg(playerid,"Você não pode rebaixar membros do ranking mais alto.");
- currentRank --;
- MySQLUpdateInt(sqlid, "FactionRank", currentRank, "players");
- /*new oldSub[2], newSub[2], oldRank;
- oldRank = currentRank + 1;*/
- //FactionLog(SQLID[playerid], sqlid, 2, oldSub, newSub, oldRank, currentRank, Faction[playerid]);
- SendClientMessageF(playerid,COLOR_ORANGE,"Você rebaixou %s! Agora ele é Rank %i (%s)",actualName,currentRank,GetFactionRankName(Faction[playerid], currentRank));
- }
- else return SysMsg(playerid, "Nome não encontrado no banco de dados, use [Nome_Sobrenome] ao pesquisar.");
- return true;
- }
- CMD:promover(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- if(isnull(params)) return SysMsg(playerid,"Use: /promover [Nome_Sobrenome]");
- if(strmatch(params, GetName(playerid))) return SysMsg(playerid, "Você não pode promover você mesmo.");
- foreach(new p: Player)
- {
- if(strmatch(params, GetName(p)))
- {
- if(IsPlayerConnected(p) && Logged{p} && SQLID[p] != SQLID[playerid])
- {
- if(Faction[p] != Faction[playerid]) return SysMsg(playerid, "Você não pode promover alguém que não esteja na sua facção.");
- if(FactionRank[p] >= FactionRank[playerid]) return SysMsg(playerid, "Você não pode promover alguém que seja mais alto ou igual a você.");
- if(FactionRank[p] >= FACTIONS[Faction[p]][FactionUberLeaderRank]) return SysMsg(playerid, "Essa pessoa já tem o Rank mais alto possivel.");
- FactionRank[p] ++;
- MySQLUpdateInt(SQLID[p], "FactionRank", FactionRank[p], "players");
- format(gstr, sizeof(gstr),"%s %s promoveu você! Agora você é %i(%s).", GetFactionRankName(Faction[playerid], FactionRank[playerid]),NameEx(playerid),FactionRank[p],GetFactionRankName(Faction[p], FactionRank[p]));
- SendClientMessage(p,COLOR_ORANGE,gstr);
- UnlockAchievement(p, 63);
- format(gstr, sizeof(gstr),"Você promoveu %s! Agora ele é %i(%s)", NameEx(p), FactionRank[p] ,GetFactionRankName(Faction[playerid], FactionRank[p]));
- SendClientMessage(playerid,COLOR_ORANGE,gstr);
- return true;
- }
- else return SysMsg(playerid, "Esse jogador não está conectado ou ainda não fez login, tente novamente.");
- }
- }
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id, Faction, FactionRank, Name FROM players WHERE Name = '%e' LIMIT 1", params);
- mysql_pquery(conn, mquery, "PromoteF", "d", playerid);
- return true;
- }
- CMD:despedir(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- new fullname[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", fullname)) return SysMsg(playerid,"Use: /despedir [Nome_Sobrenome] *Observe que isso limpa o banco de dados, não in game*");
- new sqlid = MySQLCheckAccount(fullname, playerid);
- if(sqlid == 0) return SysMsg(playerid, "Nome não encontrado, use NOME_SOBRENOME.");
- if(sqlid == SQLID[playerid]) return SysMsg(playerid, "O nome não pode ser sua conta.");
- new playa = -1;
- foreach(new i: Player) if(strcmp(GetName(i), fullname, true) == 0) playa = i;
- if(playa != -1 && IsPlayerConnected(playa))
- {
- if(Faction[playerid] != Faction[playa]) return SysMsg(playerid,"Esse jogador não está na mesma facção que você");
- if(FactionRank[playerid] < FactionRank[playa]) return SysMsg(playerid,"Você não pode despedir alguem que tem o Rank superior ao seu.");
- if(RadioFrequency[playa] == FACTIONS[Faction[playa]][FactionRadioChannel]) RadioFrequency[playa] = 1000;
- for(new r = 0; r < 3; r++)
- {
- if(RadioSlot[playa][r] == FACTIONS[Faction[playa]][FactionRadioChannel])
- {
- RadioSlot[playa][r] = 1000;
- }
- }
- Faction[playa] = 0;
- FactionRank[playa] = 0;
- if(MySpawnID[playa] == 2)
- {
- MySpawnID[playa] = 1;
- SubFactionSpawn[playa] = 0;
- }
- if(RestrictedVest{playa}) SetPlayerArmourEx(playa, 0.0, 1);
- ResetPlayerWeapons(playa);
- for(new slot = MAX_TOTAL_WEAPONS - 1; slot != -1; slot--)
- {
- if(WeaponData[playa][slot][WeaponOrigin] == 3)
- {
- ResetWeaponVariables(playa, 0, slot);
- }
- }
- for(new slot = MAX_TOTAL_WEAPONS - 1; slot != -1; slot--)
- {
- GivePlayerWeapon(playa, WeaponData[playa][slot][Weapon], WeaponData[playa][slot][WeaponAmmo]);
- }
- IsESU{playa} = false;
- if(Clothes[playa][0] == 0)
- {
- cPlayersSkin[playa] = 1;
- SetPlayerSkinEx(playa, 1);
- }
- if(Clothes[playa][0] != 0)
- {
- cPlayersSkin[playa] = Clothes[playa][0];
- SetPlayerSkinEx(playa, Clothes[playa][0]);
- }
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET Skin = %i WHERE id = %i", cPlayersSkin[playa], SQLID[playa]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid,COLOR_ORANGE,"Você despediu %s!", NameEx(playa));
- FactionCustomRank[playa][0] = 0;
- IsESU{playerid} = false;
- SendClientMessageF(playa, COLOR_ORANGE,"%s %s despediu você, agora você é um civil.", GetFactionRankName(Faction[playerid], FactionRank[playerid]), NameEx(playerid));
- //new oldSub[2], newSub[2], oldRank, newRank;
- for(new p; p < MAX_TOYS; p++)
- {
- if(ToyInfo[playa][p][FactionMask] == 1)
- {
- ClearToyData(playa, p);
- }
- }
- FirePlayer(sqlid, 1);
- //FactionLog(SQLID[playerid], SQLID[playa], 1, oldSub, newSub, oldRank, newRank, Faction[playerid]);
- }
- else
- {
- mysql_format(conn, mquery, sizeof(mquery), "SELECT Faction,FactionRank,Name FROM `players` WHERE id = %i", sqlid);
- mysql_pquery(conn, mquery, "Fire", "dd", playerid, sqlid);
- }
- return true;
- }
- CMD:togglef(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- if(FACTIONS[Faction[playerid]][FactionChatToggleOff] == 0)
- {
- FACTIONS[Faction[playerid]][FactionChatToggleOff] = 1;
- foreach(new i: Player) if(Logged{i} && Faction[i] == Faction[playerid]) SendClientMessageF(i, COLOR_ORANGE,"Chate da facção foi desabilitado por %s.", NameEx(playerid));
- }
- else
- {
- FACTIONS[Faction[playerid]][FactionChatToggleOff] = 0;
- foreach(new i: Player) if(Logged{i} && Faction[i] == Faction[playerid]) SendClientMessageF(i, COLOR_ORANGE, "Chat da Facção foi ativado por %s.", NameEx(playerid));
- }
- return true;
- }
- CMD:setsubrank(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- new pname[32], newrank[20], playa;
- if(sscanf(params, "s[32]s[20]", pname, newrank)) return SysMsg(playerid,"Use: /setsubrank [ID / Nome_Sobrenome] [Novo Sub Rank]");
- playa = GetPlayerIDs(pname);
- if(!InvalidPlayer(playa))
- {
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(Faction[playerid] != Faction[playa]) return SysMsg(playerid,"Esse jogador não está na mesma facção que você");
- if((strlen(newrank) < 2 || strlen(newrank) > 15)) return SysMsg(playerid,"Certifique-se de que o tamanho da classificação esteja entre 2 e 15 letras.");
- format(FactionCustomRank[playa], 16, newrank);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET FactionCustomRank = '%e' WHERE id = %i", FactionCustomRank[playa], SQLID[playa]);
- mysql_pquery(conn, mquery);
- if(strfind(FactionCustomRank[playa], "ESU") != -1) IsESU{playa} = true;
- else IsESU{playa} = false;
- SendClientMessageF(playerid,COLOR_ORANGE, "Você definiu %s como sub-rank '%s'", NameEx(playa), newrank);
- SendClientMessageF(playa,COLOR_ORANGE, "%s definiu você como sub-rank '%s'", NameEx(playerid), newrank);
- }
- else if(strfind(pname, "_", true) != -1)
- {
- new sqlid = MySQLCheckAccount(pname, playerid);
- if(sqlid == 0) return SysMsg(playerid, "Nome não encontrado na base de Dados, tente novamente.");
- if(sqlid == SQLID[playerid]) return SysMsg(playerid, "O nome não pode ser da sua conta.");
- if(strlen(newrank) < 2 || strlen(newrank) > 15) return SysMsg(playerid,"Certifique-se de que o tamanho da classificação esteja entre 2 e 15 letras.");
- MySQLUpdateString(sqlid, "FactionCustomRank", newrank, "players");
- SendClientMessageF(playerid,COLOR_ORANGE,"Você definiu %s como sub-rank '%s'", RPName(pname), newrank);
- }
- return true;
- }
- CMD:frespawn(playerid, params[])//respawn de veiculos Facção
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == 0) return SysMsg(playerid, "Você deve estar em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- if(isnull(params)) return SysMsg(playerid,"Use: /frespawn [ID do veículo ou TODOS] *Use /fcars para ver o ID, ou /dl*");
- if(strcmp("todos", params, true) == 0)
- {
- new vcount = 0, tcount = 0;
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(IsVehicleSpawned(v) && FVehicleData[v][FVFaction] == Faction[playerid] && !FVehicleData[v][FImpounded])
- {
- tcount ++;
- if(VehicleBeingTowed(v)) continue;
- if(VehicleIsOccupied(v)) continue;
- vcount ++;
- RespawnFactionCar(v);
- }
- }
- foreach(new i: Player) if(Logged{i} && Faction[i] == Faction[playerid]) SendClientMessageF(i, COLOR_ORANGE, "[Mensagem da facção] %s respawno %i dos veiculos da facção %i.", NameEx(playerid), vcount, tcount);//revisar
- }
- else
- {
- new v = strval(params);
- if(IsVehicleSpawned(FVehicleData[v][FactionVehID]) && FVehicleData[v][FVFaction] == Faction[playerid])
- {
- if(VehicleBeingTowed(v)) return SysMsg(playerid, "Você não pode respawna um veículo que está sendo rebocado.");
- if(VehicleIsOccupied(v)) return SysMsg(playerid, "Você não pode respawnar um veiculo que está ocupado no momento.");
- if(FVehicleData[v][FImpounded]) return SysMsg(playerid, "Você não pode melhorar um veículo que esta confiscado.");
- SendClientMessage(playerid, COLOR_ORANGE, "O veiculo foi spawnado.");
- RespawnFactionCar(v);
- }
- }
- return true;
- }
- CMD:setfmotd(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == 0) return SysMsg(playerid, "Você deve estar em uma facção para usar isso.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid, "Você não tem Rank suficiente na facção para mudar o faction MOTD.");
- if(isnull(params)) return SysMsg(playerid,"Use: /setfmotd [novo faction motd]");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE fmotd SET fmotd = '%e' WHERE fid = %i", params, Faction[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_WHITE, "Definiu o faction MOTD para %s", params);
- format(sgstr, sizeof(sgstr), "Faction MOTD %i alterado", Faction[playerid]);
- AdminLog(playerid, 0, params, sgstr);
- return true;
- }
- CMD:setrank(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você precisa estar logado para usar esta ferramenta.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(!IsValidLeaderRank(Faction[playerid], FactionRank[playerid])) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- new vehicle = GetPlayerVehicleID(playerid);
- if(vehicle == 0) return SysMsg(playerid, "Você nem está em um veículo.");
- new faction = IsFactionVehicle(vehicle);
- if(faction == 0) return SysMsg(playerid, "Esse veiculo não é de uma facção");
- if((faction > 0 && Faction[playerid] != faction) && !IsPlayerAdmin(playerid)) return SysMsg(playerid,"Você não pode editar esse veiculo de facção");
- if(faction > 0)
- {
- new newRank;
- if(isnull(params)) return SysMsg(playerid,"Use: /setrank [Classificação necessária para conduzir o veículo]");
- if(!IsNumeric(params)) return SysMsg(playerid,"O ranking deve ser um número.");
- newRank = strval(params);
- if(newRank < 1 || newRank > FACTIONS[Faction[playerid]][FactionUberLeaderRank]) return SysMsgF(playerid, "O Rank só pode ser de 1 a %i.", FACTIONS[Faction[playerid]][FactionUberLeaderRank]);
- if(FVehicleData[vehicle][FVMinRank] == newRank) return SysMsg(playerid,"Rank já é esse valor.");
- if(FVehicleData[vehicle][FVMinRank] > FactionRank[playerid]) return SysMsg(playerid,"Você não pode editar a classificação de um veículo se for superior ao seu próprio ranking.");
- FVehicleData[vehicle][FVMinRank] = newRank;
- MySQLUpdateInt(FVehicleData[vehicle][FVSQLID], "MinRank", newRank, "fveh");
- SendClientMessageF(playerid, COLOR_WHITE, "A restrição de classificação de veículo de facção é agora %s(%i) a mais.", GetFactionRankName(Faction[playerid], newRank), newRank);
- }
- return true;
- }
- CMD:setrankname(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(FactionRank[playerid] < FACTIONS[Faction[playerid]][FactionUberLeaderRank]) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- new rank, desc[32];
- if(sscanf(params, "is[32]", rank, desc)) return SysMsg(playerid,"Use: /setrankname [Número do RANK] [Nome] *Exemplo: /setrankname 1 Trainee*");
- if(strlen(desc) > 19) return SysMsg(playerid,"O comprimento do nome da classificação é muito longo (max 19 characters).");
- if(rank > FACTIONS[Faction[playerid]][FactionUberLeaderRank]) return SysMsgF(playerid, "O Rank só pode ser de 1 a %i.", FACTIONS[Faction[playerid]][FactionUberLeaderRank]);
- new x = rank - 1, f = Faction[playerid];
- if(strcmp(FactionRanks[f][x], desc, true) == 0) return SysMsgF(playerid, "O nome do Rank já é %s", desc);
- new mysqlfield[12];
- format(mysqlfield, 12, "RankName%i", rank);
- format(FactionRanks[f][x], 32, desc);
- MySQLUpdateString(FACTIONS[f][FactionId], mysqlfield, desc, "factions");
- SendClientMessageF(playerid, COLOR_ORANGE,"Rank %i agora é %s.", rank, desc);
- return true;
- }
- CMD:setspawnpoint(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(FactionRank[playerid] < FACTIONS[Faction[playerid]][FactionUberLeaderRank]) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode criar um spawn dentro de um veiculo.");
- if(IsInHouseID[playerid] != -1) return SysMsg(playerid,"Você não pode criar um spawn dentro de uma casa.");
- if(IsInBizzID[playerid] != -1) return SysMsg(playerid,"Você não pode criar um spawn dentro de um negócio.");
- new spawnpoint, desc[40];
- if(sscanf(params, "is[40]", spawnpoint, desc)) return SysMsg(playerid,"Use: /setspawnpoint [Ponto 1-5] [descrição] *Exemplo: /setspawnpoint 1 Escritório de Fort Carson*");
- if(strlen(desc) > 39) return SysMsg(playerid,"O comprimento da descrição é muito longo (max 39 characters).");
- switch(spawnpoint)
- {
- case 1:
- {
- GetPlayerPos(playerid, FACTIONS[Faction[playerid]][FactionSpawn1][0], FACTIONS[Faction[playerid]][FactionSpawn1][1], FACTIONS[Faction[playerid]][FactionSpawn1][2]);
- GetPlayerFacingAngle(playerid, FACTIONS[Faction[playerid]][FactionSpawn1][3]);
- FACTIONS[Faction[playerid]][FactionSpawnVW][0] = GetPlayerVirtualWorld(playerid);
- FACTIONS[Faction[playerid]][FactionSpawnInt][0] = GetPlayerInterior(playerid);
- format(FACTIONS[Faction[playerid]][FactionSpawn1Name], 40, desc);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn1Name = '%e', Spawn1X = %f, Spawn1Y = %f, Spawn1Z = %f, Spawn1A = %f, Spawn1VW = %i, Spawn1Int = %i WHERE id = %i",
- desc, FACTIONS[Faction[playerid]][FactionSpawn1][0], FACTIONS[Faction[playerid]][FactionSpawn1][1], FACTIONS[Faction[playerid]][FactionSpawn1][2], FACTIONS[Faction[playerid]][FactionSpawn1][3],
- FACTIONS[Faction[playerid]][FactionSpawnVW][0], FACTIONS[Faction[playerid]][FactionSpawnInt][0], FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- }
- case 2:
- {
- GetPlayerPos(playerid, FACTIONS[Faction[playerid]][FactionSpawn2][0], FACTIONS[Faction[playerid]][FactionSpawn2][1], FACTIONS[Faction[playerid]][FactionSpawn2][2]);
- GetPlayerFacingAngle(playerid, FACTIONS[Faction[playerid]][FactionSpawn2][3]);
- FACTIONS[Faction[playerid]][FactionSpawnVW][1] = GetPlayerVirtualWorld(playerid);
- FACTIONS[Faction[playerid]][FactionSpawnInt][1] = GetPlayerInterior(playerid);
- format(FACTIONS[Faction[playerid]][FactionSpawn2Name], 40, desc);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn2Name = '%e', Spawn2X = %f, Spawn2Y = %f, Spawn2Z = %f, Spawn2A = %f, Spawn2VW = %i, Spawn2Int = %i WHERE id = %i",
- desc, FACTIONS[Faction[playerid]][FactionSpawn2][0], FACTIONS[Faction[playerid]][FactionSpawn2][1], FACTIONS[Faction[playerid]][FactionSpawn2][2], FACTIONS[Faction[playerid]][FactionSpawn2][3],
- FACTIONS[Faction[playerid]][FactionSpawnVW][1], FACTIONS[Faction[playerid]][FactionSpawnInt][1], FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- }
- case 3:
- {
- if(FACTIONS[Faction[playerid]][FactionSpawn2][0] == 0) return SysMsg(playerid, "Por favor, use o ponto de spawn 2 primeiro.");
- GetPlayerPos(playerid, FACTIONS[Faction[playerid]][FactionSpawn3][0], FACTIONS[Faction[playerid]][FactionSpawn3][1], FACTIONS[Faction[playerid]][FactionSpawn3][2]);
- GetPlayerFacingAngle(playerid, FACTIONS[Faction[playerid]][FactionSpawn3][3]);
- FACTIONS[Faction[playerid]][FactionSpawnVW][2] = GetPlayerVirtualWorld(playerid);
- FACTIONS[Faction[playerid]][FactionSpawnInt][2] = GetPlayerInterior(playerid);
- format(FACTIONS[Faction[playerid]][FactionSpawn3Name], 40, desc);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn3Name = '%e', Spawn3X = %f, Spawn3Y = %f, Spawn3Z = %f, Spawn3A = %f, Spawn3VW = %i, Spawn3Int = %i WHERE id = %i",
- desc, FACTIONS[Faction[playerid]][FactionSpawn3][0], FACTIONS[Faction[playerid]][FactionSpawn3][1], FACTIONS[Faction[playerid]][FactionSpawn3][2], FACTIONS[Faction[playerid]][FactionSpawn3][3],
- FACTIONS[Faction[playerid]][FactionSpawnVW][2], FACTIONS[Faction[playerid]][FactionSpawnInt][2], FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- }
- case 4:
- {
- if(FACTIONS[Faction[playerid]][FactionSpawn3][0] == 0) return SysMsg(playerid, "Por favor, use o ponto de spawn 2 primeiro.");
- GetPlayerPos(playerid, FACTIONS[Faction[playerid]][FactionSpawn4][0], FACTIONS[Faction[playerid]][FactionSpawn4][1], FACTIONS[Faction[playerid]][FactionSpawn4][2]);
- GetPlayerFacingAngle(playerid, FACTIONS[Faction[playerid]][FactionSpawn4][3]);
- FACTIONS[Faction[playerid]][FactionSpawnVW][3] = GetPlayerVirtualWorld(playerid);
- FACTIONS[Faction[playerid]][FactionSpawnInt][3] = GetPlayerInterior(playerid);
- format(FACTIONS[Faction[playerid]][FactionSpawn4Name], 40, desc);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn4Name = '%e', Spawn4X = %f, Spawn4Y = %f, Spawn4Z = %f, Spawn4A = %f, Spawn4VW = %i, Spawn4Int = %i WHERE id = %i",
- desc, FACTIONS[Faction[playerid]][FactionSpawn4][0], FACTIONS[Faction[playerid]][FactionSpawn4][1], FACTIONS[Faction[playerid]][FactionSpawn4][2], FACTIONS[Faction[playerid]][FactionSpawn4][3],
- FACTIONS[Faction[playerid]][FactionSpawnVW][3], FACTIONS[Faction[playerid]][FactionSpawnInt][3], FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- }
- case 5:
- {
- if(FACTIONS[Faction[playerid]][FactionSpawn4][0] == 0) return SysMsg(playerid, "Por favor, use o ponto de spawn 2 primeiro.");
- GetPlayerPos(playerid, FACTIONS[Faction[playerid]][FactionSpawn5][0], FACTIONS[Faction[playerid]][FactionSpawn5][1], FACTIONS[Faction[playerid]][FactionSpawn5][2]);
- GetPlayerFacingAngle(playerid, FACTIONS[Faction[playerid]][FactionSpawn5][3]);
- FACTIONS[Faction[playerid]][FactionSpawnVW][4] = GetPlayerVirtualWorld(playerid);
- FACTIONS[Faction[playerid]][FactionSpawnInt][4] = GetPlayerInterior(playerid);
- format(FACTIONS[Faction[playerid]][FactionSpawn5Name], 40, desc);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn5Name = '%e', Spawn5X = %f, Spawn5Y = %f, Spawn5Z = %f, Spawn5A = %f, Spawn5VW = %i, Spawn5Int = %i WHERE id = %i",
- desc, FACTIONS[Faction[playerid]][FactionSpawn5][0], FACTIONS[Faction[playerid]][FactionSpawn5][1], FACTIONS[Faction[playerid]][FactionSpawn5][2], FACTIONS[Faction[playerid]][FactionSpawn5][3],
- FACTIONS[Faction[playerid]][FactionSpawnVW][4], FACTIONS[Faction[playerid]][FactionSpawnInt][4], FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- }
- default: return SysMsg(playerid,"O ponto de Spawn só pode ser de 1 a 5.");
- }
- SendClientMessageF(playerid, COLOR_ORANGE, "Ponto de spawn %i foi salvo. [%s]", spawnpoint, desc);
- return true;
- }
- CMD:removespawnpoint(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Faction[playerid] == 0) return SysMsg(playerid,"Você não está em uma facção.");
- if(FactionRank[playerid] < FACTIONS[Faction[playerid]][FactionUberLeaderRank]) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- new spawnpoint;
- if(sscanf(params, "i", spawnpoint)) return SysMsg(playerid,"Use: /removespawnpoint [ponto 2-5]");
- new desc[40];
- switch(spawnpoint)
- {
- case 1: return SysMsg(playerid,"Você não pode excluir o primeiro ponto de spawn.");
- case 2:
- {
- if(FACTIONS[Faction[playerid]][FactionSpawn2][0] == 0) return SysMsg(playerid,"Este ponto de spawn não foi configurado.");
- format(desc, 40, FACTIONS[Faction[playerid]][FactionSpawn2Name]);
- FACTIONS[Faction[playerid]][FactionSpawn2][0] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn2][1] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn2][2] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn2][3] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawnVW][1] = 0;
- FACTIONS[Faction[playerid]][FactionSpawnInt][1] = 0;
- FACTIONS[Faction[playerid]][FactionSpawn2Name][0] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn2Name = '', Spawn2X = 0.0, Spawn2Y = 0.0, Spawn2Z = 0.0, Spawn2A = 0.0, Spawn2VW = 0, Spawn2Int = 0 WHERE id = %i", FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET SubFactionSpawn=1 WHERE SubFactionSpawn=3 AND Faction=%i", Faction[playerid]);
- mysql_pquery(conn, mquery);
- }
- case 3:
- {
- if(FACTIONS[Faction[playerid]][FactionSpawn3][0] == 0) return SysMsg(playerid,"Este ponto de spawn não foi definido.");
- format(desc, 40, FACTIONS[Faction[playerid]][FactionSpawn3Name]);
- FACTIONS[Faction[playerid]][FactionSpawn3][0] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn3][1] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn3][2] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn3][3] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawnVW][2] = 0;
- FACTIONS[Faction[playerid]][FactionSpawnInt][2] = 0;
- FACTIONS[Faction[playerid]][FactionSpawn3Name][0] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn3Name = '', Spawn3X = 0.0, Spawn3Y = 0.0, Spawn3Z = 0.0, Spawn3A = 0.0, Spawn3VW = 0, Spawn3Int = 0 WHERE id = %i", FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET SubFactionSpawn=1 WHERE SubFactionSpawn=3 AND Faction=%i", Faction[playerid]);
- mysql_pquery(conn, mquery);
- }
- case 4:
- {
- if(FACTIONS[Faction[playerid]][FactionSpawn4][0] == 0) return SysMsg(playerid,"Este ponto de spawn não foi configurado.");
- format(desc, 40, FACTIONS[Faction[playerid]][FactionSpawn4Name]);
- FACTIONS[Faction[playerid]][FactionSpawn4][0] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn4][1] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn4][2] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn4][3] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawnVW][3] = 0;
- FACTIONS[Faction[playerid]][FactionSpawnInt][3] = 0;
- FACTIONS[Faction[playerid]][FactionSpawn4Name][0] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn4Name = '', Spawn4X = 0.0, Spawn4Y = 0.0, Spawn4Z = 0.0, Spawn4A = 0.0, Spawn4VW = 0, Spawn4Int = 0 WHERE id = %i", FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET SubFactionSpawn=1 WHERE SubFactionSpawn=4 AND Faction=%i", Faction[playerid]);
- mysql_pquery(conn, mquery);
- }
- case 5:
- {
- if(FACTIONS[Faction[playerid]][FactionSpawn5][0] == 0) return SysMsg(playerid,"Este ponto de spawn não foi configurado.");
- format(desc, 40, FACTIONS[Faction[playerid]][FactionSpawn5Name]);
- FACTIONS[Faction[playerid]][FactionSpawn5][0] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn5][1] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn5][2] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawn5][3] = 0.0;
- FACTIONS[Faction[playerid]][FactionSpawnVW][4] = 0;
- FACTIONS[Faction[playerid]][FactionSpawnInt][4] = 0;
- FACTIONS[Faction[playerid]][FactionSpawn5Name][0] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE factions SET Spawn5Name = '', Spawn5X = 0.0, Spawn5Y = 0.0, Spawn5Z = 0.0, Spawn5A = 0.0, Spawn5VW = 0, Spawn5Int = 0 WHERE id = %i", FACTIONS[Faction[playerid]][FactionId]);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET SubFactionSpawn=1 WHERE SubFactionSpawn=5 AND Faction=%i", Faction[playerid]);
- mysql_pquery(conn, mquery);
- }
- default: return SysMsg(playerid,"O ponto de Spawn só pode ser de 1 a 5.");
- }
- foreach(new i: Player)
- {
- if(Logged{i} && Faction[i] == Faction[playerid] && SubFactionSpawn[i] == spawnpoint)
- {
- SubFactionSpawn[i] = 1;
- MySQLUpdateInt(SQLID[i], "SubFactionSpawn", SubFactionSpawn[i], "players");
- }
- }
- format(gstr, sizeof(gstr), "Ponto de spawn %i (%s) foi removido.", spawnpoint, desc);
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- return true;
- }
- CMD:fsaque(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- if(!IsInBank(playerid)) return SysMsg(playerid, "Você não esta em um banco.");
- if(Faction[playerid] < 1) return SysMsg(playerid,"Você não está em uma facção.");
- if(FactionRank[playerid] < FACTIONS[Faction[playerid]][FactionUberLeaderRank]) return SysMsg(playerid,"Você não tem um Rank alto suficiente na facção para fazer isso.");
- new amount;
- if(sscanf(params, "i", amount)) return SysMsg(playerid,"Use: /fsaque [Quantidade]");
- if(amount < 1) return SysMsg(playerid,"Quantidade Inválida, Deve ser maior que 0.");
- if(amount > FACTIONS[Faction[playerid]][FactionBankBalance]) return SysMsg(playerid,"Quantidade Inválida, Não há nem mesmo na conta.");
- new oldBal = FACTIONS[Faction[playerid]][FactionBankBalance];
- FACTIONS[Faction[playerid]][FactionBankBalance] -= amount;
- GivePlayerCash(playerid, amount);
- SendClientMessageF(playerid, COLOR_WHITE, "[Saque - Facção] Equilíbrio bancário da facção {0098F2}%s:", GetFactionName(playerid));
- SendClientMessageF(playerid, COLOR_WHITE, "[Saque - Facção] Balance Antigo: {4BB74C}$%s{FFFFFF}, Novo Balance: {4BB74C}$%s{FFFFFF}.", format_cash(oldBal), format_cash(FACTIONS[Faction[playerid]][FactionBankBalance]));
- MySQLUpdateInt(FACTIONS[Faction[playerid]][FactionId], "BankBalance", FACTIONS[Faction[playerid]][FactionBankBalance], "factions");
- format(gstr, sizeof(gstr),"[%s] %s(%i) retirou $%i da %s fbank. (Total: $%i)", GetServerTimeString(), NameEx(playerid), playerid, amount, GetFactionName(playerid), Cash[playerid]);
- AddToLog("cash", gstr);
- return true;
- }
- //==============================//
- CMD:atm(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado.");
- new atm = IsPlayerNearATM(playerid);
- if(atm == 0) return SysMsg(playerid,"Você não está proximo de um caixa eletronico.");
- new Float:atmPos[3];
- GetDynamicObjectPos(atm, atmPos[0], atmPos[1], atmPos[2]);
- SetPlayerToFacePoint(playerid, atmPos[0], atmPos[1]);
- OnePlayAnim(playerid, "ped", "ATM", 3.5, 0, 0, 0, 0, 0);
- UsingATM{playerid} = true;
- Dialog_Show(playerid,BankMenu,DIALOG_STYLE_LIST,"{3D9140}Gerênciamento bancário {FFFFFF}(ATM)","Balance\nSaque\nSacar tudo\nSacar metade","Selecionar","Cancelar");
- return true;
- }
- CMD:assinarcheque(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!CheckReady{playerid}) return SysMsg(playerid,"Você não tem um cheque pronto.");
- if(IsPlayerInRangeOfPoint(playerid, 2.5, 756.6013,-31.4750,1008.6959) || IsPlayerInRangeOfPoint(playerid, 2.5, 915.378479, 2370.55102, 246.462112) || IsPlayerInRangeOfPoint(playerid, 2.5, 889.941467, 2261.735351, 238.230422) || IsPlayerInRangeOfPoint(playerid, 2.5, 1174.3242,1354.0504,1002.8235) || ADuty[playerid] == 1)
- {
- new paydaynumber;
- if(sscanf(params, "i", paydaynumber)) return SysMsg(playerid,"Use: /assinarcheque [número]");
- if(paydaynumber < 1111 || paydaynumber > 9111) return SysMsg(playerid,"Número de verificação inválido.");
- if(paydaynumber != CheckNumber[playerid]) return SysMsg(playerid,"Número de verificação errado.");
- PayDay(playerid);
- CheckReady{playerid} = false;
- UnlockAchievement(playerid, 11);
- PlayerTextDrawSetString(playerid, Signcheck[playerid], "~g~~h~~h~Payday: ~w~0000");
- PlayerTextDrawHide(playerid, Signcheck[playerid]);
- printf("[PayDay] %s (%i)",NameEx(playerid),CheckReady{playerid});
- return true;
- }
- SysMsg(playerid,"Você deve estar em uma Prefeitura da cidade para obter o seu Payday. (Palomino Creek, Fort Carson ou Angel Pine).");
- return true;
- }
- CMD:agua(playerid)
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Water] <= 0) return SysMsg(playerid,"Você não tem água.");
- Inventory[playerid][Water] --;
- MySQLUpdateFloat(SQLID[playerid], "HasWater", Inventory[playerid][Water], "players");
- OnePlayAnim(playerid, "FOOD", "EAT_Burger", 3.0, 0, 0, 0, 0, 0);
- SendClientMessage(playerid, COLOR_WHITE, "Depois de beber alguns copos de {00B9F9}água{FFFFFF}, você se sente um pouco {00B9F9}refrescado{FFFFFF} e {00B9F9}hidratado{FFFFFF}.");
- return true;
- }
- CMD:beber(playerid, params[]) //comando para bar //observar
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerAtBar(playerid)) return SysMsg(playerid,"Você não está em um Bar.");
- if(isnull(params)) return SysMsg(playerid,"Use: /beber [Nome do Drink] (Drinks: vinho, cerveja, sprunk, vodka, cola)");
- if(strcmp("cerveja",params,true) == 0)
- {
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_BEER) return SysMsg(playerid,"Aguarde até que você tenha terminado de beber.");
- GivePlayerCash(playerid, -5);
- DrunkLevel[playerid] = GetPlayerDrunkLevel(playerid);
- if(DrunkLevel[playerid] < 47500)
- {
- DrunkLevel[playerid] += 2500;
- SetPlayerDrunkLevel(playerid, DrunkLevel[playerid]);
- }
- else
- {
- DrunkLevel[playerid] = 50000;
- SetPlayerDrunkLevel(playerid, 50000);
- }
- LoopingAnim(playerid, "BAR", "Barcustom_get", 3.0, 0, 1, 1, 1, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_BEER);
- SendClientMessage(playerid,COLOR_SKYBLUE,"Você comprou uma Cerveja por $5.");
- format(gstr, sizeof(gstr),"* %s compra uma Garrafa de Cerveja no bar. *",NameRP(playerid));
- ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- UnlockAchievement(playerid, 64);
- return true;
- }
- else if(strcmp("vinho",params,true) == 0)
- {
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_WINE) return SysMsg(playerid,"Aguarde até que você tenha terminado de beber.");
- GivePlayerCash(playerid, -7);
- DrunkLevel[playerid] = GetPlayerDrunkLevel(playerid);
- if(DrunkLevel[playerid] < 47000)
- {
- DrunkLevel[playerid] += 3000;
- SetPlayerDrunkLevel(playerid, DrunkLevel[playerid]);
- }
- else
- {
- DrunkLevel[playerid] = 50000;
- SetPlayerDrunkLevel(playerid, 50000);
- }
- LoopingAnim(playerid, "BAR", "Barcustom_get", 3.0, 0, 1, 1, 1, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_WINE);
- SendClientMessage(playerid,COLOR_SKYBLUE,"Você comprou uma Garrafa de Vinho por $7.");
- format(gstr, sizeof(gstr),"* %s compra uma garrafa de Vinho no Bar. *",NameRP(playerid));
- ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- UnlockAchievement(playerid, 64);
- return true;
- }
- else if(strcmp("sprunk",params,true) == 0)
- {
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_SPRUNK) return SysMsg(playerid,"Aguarde até que você tenha terminado de beber.");
- GivePlayerCash(playerid, -3);
- LoopingAnim(playerid, "BAR", "Barcustom_get", 3.0, 0, 1, 1, 1, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_SPRUNK);
- SendClientMessage(playerid,COLOR_SKYBLUE,"Você comprou um Copo de Sprunk por $3.");
- format(gstr, sizeof(gstr),"* %s compra um Copo de Sprunk no bar. *",NameRP(playerid));
- ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- UnlockAchievement(playerid, 64);
- return true;
- }
- else if(strcmp("cola",params,true) == 0)
- {
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_SPRUNK) return SysMsg(playerid,"Aguarde até que você tenha terminado de beber.");
- GivePlayerCash(playerid, -3);
- LoopingAnim(playerid, "BAR", "Barcustom_get", 3.0, 0, 1, 1, 1, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_SPRUNK);
- SendClientMessage(playerid,COLOR_SKYBLUE,"Você com comprou uma latinha de Coca-Cola por $3.");
- format(gstr, sizeof(gstr),"* %s compra uma Latinha de Coca-cola no bar. *",NameRP(playerid));
- ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- UnlockAchievement(playerid, 64);
- return true;
- }
- else if(strcmp("vodka",params,true) == 0)
- {
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DRINK_WINE) return SysMsg(playerid,"Aguarde até que você tenha terminado de beber.");
- GivePlayerCash(playerid, -6);
- DrunkLevel[playerid] = GetPlayerDrunkLevel(playerid);
- if(DrunkLevel[playerid] < 47000)
- {
- DrunkLevel[playerid] += 5000;
- SetPlayerDrunkLevel(playerid, DrunkLevel[playerid]);
- }
- else
- {
- DrunkLevel[playerid] = 50000;
- SetPlayerDrunkLevel(playerid, 50000);
- }
- LoopingAnim(playerid, "BAR", "Barcustom_get", 3.0, 0, 1, 1, 1, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_WINE);
- SendClientMessage(playerid,COLOR_SKYBLUE,"Você comprou uma Garrafa de Vodka $6.");
- format(gstr, sizeof(gstr),"* %s compra uma garrafa de Vodka no bar. *",NameRP(playerid));
- ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- UnlockAchievement(playerid, 64);
- return true;
- }
- return true;
- }
- CMD:comprarcomida(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- gstr[0] = EOS;
- if(IsPlayerInRangeOfPoint(playerid,2.5,375.593475,-119.421913,1001.499511) || IsPlayerInRangeOfPoint(playerid, 2.5, 1377.5850,230.8785,859.7217))
- {
- if(IsInBizzID[playerid] > 0 && BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Essa loja esta com estoque vazio.");
- strcat(gstr, "{FFFFFF}Hamburger - {3D9140}$2\n");
- strcat(gstr, "{FFFFFF}X-Tudo - {3D9140}$5\n");
- strcat(gstr, "{FFFFFF}Costela Assada - {3D9140}$10\n");
- strcat(gstr, "{FFFFFF}Salada - {3D9140}$10");
- Dialog_Show(playerid, FoodMenu, DIALOG_STYLE_LIST, "Cardápio de comidas", gstr, "Comprar", "Sair");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,3.5,449.311401,-84.340423,999.554687) || IsPlayerInRangeOfPoint(playerid, 5.5, -1337.6069, -41.5284, 17.7579) ||
- IsPlayerInRangeOfPoint(playerid,3.5,378.4463,-187.9347,1000.6328) || IsPlayerInRangeOfPoint(playerid,3.5,1981.5765,2358.3240,1023.9039))
- {
- if(IsInBizzID[playerid] > 0 && BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Essa loja esta com estoque vazio.");
- strcat(gstr, "{FFFFFF}Hambúrguer - {3D9140}$4\n");
- strcat(gstr, "{FFFFFF}Café - {3D9140}$1\n");
- strcat(gstr, "{FFFFFF}Coca-Cola - {3D9140}$2\n");
- strcat(gstr, "{FFFFFF}Double Whopper Cheeseburger - {3D9140}$20\n");
- strcat(gstr, "{FFFFFF}Fritas - {3D9140}$4\n");
- strcat(gstr, "{FFFFFF}Sopa - {3D9140}$3\n");
- strcat(gstr, "{FFFFFF}Chá - {3D9140}$1\n");
- strcat(gstr, "{FFFFFF}Torrada - {3D9140}$2");
- Dialog_Show(playerid, CafeMenu, DIALOG_STYLE_LIST, "Cardápio Café", gstr, "Comprar", "Sair");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.5,-2680.204833, 632.025817, 13700.49804) || IsPlayerInRangeOfPoint(playerid, 5.5, -1340.6831, -31.1640, 14.2559)) //mont hospital, prison cafes
- {
- strcat(gstr, "{FFFFFF}Café - {3D9140}$1\n");
- strcat(gstr, "{FFFFFF}Coca-Cola - {3D9140}$2\n");
- strcat(gstr, "{FFFFFF}Sopá - {3D9140}$3\n");
- strcat(gstr, "{FFFFFF}Chá - {3D9140}$1\n");
- strcat(gstr, "{FFFFFF}Torrada - {3D9140}$2\n");
- Dialog_Show(playerid, CafeMenu, DIALOG_STYLE_LIST, "Cardápio Café", gstr, "Comprar", "Sair");
- return true;
- }
- return true;
- }
- CMD:cancelarcompra(playerid, params[])//cancelarcompra
- {
- if(!Logged{playerid}) return true;
- if(IsBrowsingMasks[playerid] > 0)
- {
- if(ClothesShop[playerid] == 1) // Binco
- {
- SetPlayerInterior(playerid, 15);
- SetPlayerPos(playerid, 217.741760, -98.467315, 1005.257812);
- SetPlayerFacingAngle(playerid, 85.428855);
- }
- else if(ClothesShop[playerid] == 2) // Pro Laps
- {
- SetPlayerInterior(playerid, 3);
- SetPlayerPos(playerid, 199.539031, -128.424484, 1003.515197);
- SetPlayerFacingAngle(playerid, 180.0);
- ClothesShop[playerid] = 0;
- }
- else if(ClothesShop[playerid] == 3) // D Sachs
- {
- SetPlayerInterior(playerid, 14);
- SetPlayerPos(playerid, 215.935409, -155.250579, 1000.523437);
- SetPlayerFacingAngle(playerid, 90.0);
- ClothesShop[playerid] = 0;
- }
- else if(ClothesShop[playerid] == 4) // Sub urban
- {
- SetPlayerInterior(playerid, 1);
- SetPlayerPos(playerid, 214.644851, -40.850963, 1002.023437);
- SetPlayerFacingAngle(playerid, 90.0);
- ClothesShop[playerid] = 0;
- }
- else if(ClothesShop[playerid] == 5) // ZIP
- {
- SetPlayerInterior(playerid, 18);
- SetPlayerPos(playerid, 180.1575, -88.2124, 1002.0234);
- SetPlayerFacingAngle(playerid, 90.0);
- ClothesShop[playerid] = 0;
- }
- SetPlayerVirtualWorldEx(playerid, BizzData[IsInBizzID[playerid]][BizzVW]);
- BrowseMaskType[playerid] = 0;
- IsBrowsingMasks[playerid] = 0;
- ClothesShop[playerid] = 0;
- SetCameraBehindPlayer(playerid);
- PlayerTextDrawHide(playerid, MaskHelpText[playerid]);
- TogglePlayerControllable(playerid, 1);
- for(new i = 0; i < MAX_TEMPCLOTHES; i++)
- {
- if(Clothing_Objects[playerid][i] != INVALID_OBJECT_ID)
- {
- DestroyDynamicObjectEx(Clothing_Objects[playerid][i], "Clothing_Objects[playerid][i]");
- Clothing_Objects[playerid][i] = INVALID_OBJECT_ID;
- }
- }
- }
- return true;
- }
- CMD:comprar(playerid, params[])//observar /pickups e nomes do /comprar
- {
- if(!Logged{playerid}) return true;
- if(IsPlayerInRangeOfPoint(playerid,5.5,-27.167560,-89.524269,1003.546875) || IsPlayerInRangeOfPoint(playerid,5.5,-23.428977, -55.200191, 1003.546875) || IsPlayerInRangeOfPoint(playerid,5.5,2.20236, -28.508106, 1003.549438) || IsPlayerInRangeOfPoint(playerid, 5.5, 1248.3158,204.4189,2020.6406) || IsPlayerInRangeOfPoint(playerid, 5.5, 663.9998,-568.8943,16.3363))
- {
- new b;
- if(IsPlayerInRangeOfPoint(playerid, 5.5, 663.9998,-568.8943,16.3363)) b = 44;
- else b = IsInBizzID[playerid];
- if(b <= 0) return SysMsg(playerid,"Você não esta em uma Loja.");
- if(BizzData[b][BizzOwnerSQLID] > 0 && BizzData[b][BizzStock] <= 0) return SysMsg(playerid,"Essa loja esta com estoque vazio.");
- gstr[0] = EOS;
- strcat(gstr, "{FFFFFF}Item\t{FFFFFF}Cost\n");
- strcat(gstr, "{FFFFFF}Mochila/Paraquedas\t{3D9140}$135\n");
- strcat(gstr, "{FFFFFF}Calculadora básica\t{3D9140}$45\n");
- strcat(gstr, "{FFFFFF}Taco de Beisebol\t{3D9140}$45\n");
- strcat(gstr, "{FFFFFF}Venda de Olhos\t{3D9140}$25\n");
- strcat(gstr, "{FFFFFF}Garrafa de Agua\t{3D9140}$2\n");
- strcat(gstr, "{FFFFFF}Garrafas de Agua (x6)\t{3D9140}$10\n");
- strcat(gstr, "{FFFFFF}Pasta\t{3D9140}$3750\n");
- strcat(gstr, "{FFFFFF}Bengala\t{3D9140}$50\n");
- strcat(gstr, "{FFFFFF}Dado\t{3D9140}$5\n");
- strcat(gstr, "{FFFFFF}Kit de primeiros socorros\t{3D9140}$65\n");
- strcat(gstr, "{FFFFFF}Flores\t{3D9140}$15\n");
- strcat(gstr, "{FFFFFF}Recipiente de combustível\t{3D9140}$125\n");
- strcat(gstr, "{FFFFFF}Taco de Golf\t{3D9140}$155\n");
- strcat(gstr, "{FFFFFF}Isqueiro\t{3D9140}$5\n");
- strcat(gstr, "{FFFFFF}Bloco de anotações\t{3D9140}$6\n");
- strcat(gstr, "{FFFFFF}Maço de cigarro (x10)\t{3D9140}$3\n");
- strcat(gstr, "{FFFFFF}Maço de cigarro (x20)\t{3D9140}$5\n");
- strcat(gstr, "{FFFFFF}Taco de sinuca\t{3D9140}$80\n");
- strcat(gstr, "{FFFFFF}Corda\t{3D9140}$12\n");
- strcat(gstr, "{FFFFFF}Pá\t{3D9140}$35\n");
- strcat(gstr, "{FFFFFF}Gravetos para Fogueira\t{3D9140}$100\n"); //Small Logs
- strcat(gstr, "{FFFFFF}ESPECIAL: Gorro Natalino\t{3D9140}$50\n");
- strcat(gstr, "{FFFFFF}Lata de Spray\t{3D9140}$50\n");
- strcat(gstr, "{FFFFFF}Relógio\t{3D9140}$250\n");
- strcat(gstr, "{FFFFFF}Papel de escrita (x5)\t{3D9140}$5\n");
- strcat(gstr, "{FFFFFF}Caneta de escrita\t{3D9140}$3\n");
- Dialog_Show(playerid, ShopDialog, DIALOG_STYLE_TABLIST_HEADERS, "Loja Geral", gstr, "Comprar", "Cancelar");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,5.5,-2236.450439, 130.609893, 1035.414062))
- {
- if(IsInBizzID[playerid] <= 0) return SysMsg(playerid,"Você não esta em uma Loja.");
- if(BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Essa loja esta com estoque vazio.");
- gstr[0] = EOS;
- strcat(gstr, "{FFFFFF}Item\t{FFFFFF}Custo\n");
- strcat(gstr, "{3D9140}$100{FFFFFF} Crédito telefônico\t{3D9140}$100\n");
- strcat(gstr, "{3D9140}$10{FFFFFF} Crédito telefônico\t{3D9140}$10\n");
- strcat(gstr, "{3D9140}$20{FFFFFF} Crédito telefônico\t{3D9140}$20\n");
- strcat(gstr, "{3D9140}$50{FFFFFF} Crédito telefônico\t{3D9140}$50\n");
- strcat(gstr, "{FFFFFF}Calculadora básica\t{3D9140}$45\n");
- strcat(gstr, "{FFFFFF}Boombox (Large)\t{3D9140}$15000\n");
- strcat(gstr, "{FFFFFF}Boombox (Small)\t{3D9140}$7500\n");
- strcat(gstr, "{FFFFFF}Camera\t{3D9140}$125\n");
- strcat(gstr, "{FFFFFF}Celular\t{3D9140}$300\n");
- strcat(gstr, "{FFFFFF}Carregador de celular para carro\t{3D9140}$395\n");
- strcat(gstr, "{FFFFFF}Lista telefônica\t{3D9140}$5\n");
- strcat(gstr, "{FFFFFF}Pocket GPS\t{3D9140}$400\n");
- strcat(gstr, "{FFFFFF}Radio\t{3D9140}$225\n");
- strcat(gstr, "{FFFFFF}Relógio\t{3D9140}$250\n");
- Dialog_Show(playerid, ShopDialog, DIALOG_STYLE_TABLIST_HEADERS, "Loja Eletrônica", gstr, "Comprar", "Cancelar");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,4.5,2150.958251,-100.995117,2.755812) || IsPlayerInRangeOfPoint(playerid, 4.5, -800.5269,-1922.8231,9.1117)) //fishing shop
- {
- gstr[0] = EOS;
- strcat(gstr, "Permissão de pesca - {3D9140}$500\n");
- strcat(gstr, "Vara de Pesca - {3D9140}$150\n");
- strcat(gstr, "Isca (X25) - {3D9140}$10\n");
- strcat(gstr, "Caixa de peixe pequeno (100 slots) - {3D9140}$1,000\n");
- strcat(gstr, "Caixa de peixe médio (250 slots) - {3D9140}$2,500\n");
- strcat(gstr, "Grande caixa de peixe (500 slots) - {3D9140}$5,000\n");
- Dialog_Show(playerid, FishingBuy, DIALOG_STYLE_LIST, "Loja de pesca", gstr, "Comprar", "Cancelar");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,7.5,312.582183, -165.342315, 999.601013)) //ammunation
- {
- if(IsInBizzID[playerid] <= 0) return SysMsg(playerid,"Você não esta em uma Loja.");
- if(BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Essa loja esta com estoque vazio.");
- gstr[0] = EOS;
- if(WeaponLicense[playerid] > 0)
- {
- strcat(gstr, "{FFFFFF}Pistola 9mm com 85 munições - {3D9140}$7500\n");
- strcat(gstr, "{FFFFFF}Desert Eagle com 70 munições - {3D9140}$10000\n");
- }
- if(WeaponLicense[playerid] > 1)
- {
- strcat(gstr, "{FFFFFF}Country Rifle com 50 munições - {3D9140}$29500\n");
- strcat(gstr, "{FFFFFF}Shotgun com 50 munições- {3D9140}$18500\n");
- }
- if(WeaponLicense[playerid] == 3)
- {
- strcat(gstr, "{FFFFFF}MP5 com 120 munições - {3D9140}$15000\n");
- }
- strcat(gstr, "{FFFFFF}Colete Leve - {3D9140}$2500\n");
- strcat(gstr, "{FFFFFF}Munições para Pistola - {3D9140}$3000\n");
- strcat(gstr, "{FFFFFF}Munições para Shotgun - {3D9140}$4000\n");
- strcat(gstr, "{FFFFFF}Munições para SMG/UZI - {3D9140}$5000\n");
- strcat(gstr, "{FFFFFF}Munições para Assault Rifle - {3D9140}$6000\n");
- strcat(gstr, "{FFFFFF}Munições para Rifle/Sniper - {3D9140}$6000\n");
- strcat(gstr, "{FFFFFF}ajuda loja");
- Dialog_Show(playerid, AmmunationDialog, DIALOG_STYLE_LIST, "Ammunation Store", gstr, "Comprar", "Cancelar");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, -104.774566, -11.245146, 1000.71875)) //sex shop
- {
- if(IsInBizzID[playerid] <= 0) return SysMsg(playerid,"Você não esta em uma Loja.");
- if(BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Essa loja esta com estoque vazio.");
- Dialog_Show(playerid, SexShopMenu, DIALOG_STYLE_LIST, "Sex Shop Itens", "{FFFFFF}Dildo roxo longo - {3D9140}$3500\n{FFFFFF}Vibrador branco pequeno - {3D9140}$2995\n{FFFFFF}Vibrato branco grander - {3D9140}$6250\n{FFFFFF}Vibrador de prata - {3D9140}$5000\n{FFFFFF}Nite Stick - {3D9140}$1200", "Comprar", "Cancelar");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, 1465.098754, -1080.154663, 213.447738) && IsPlayerAdminLevelOK(playerid, 1)) //admin ex shop
- {
- Dialog_Show(playerid, SexShopMenu, DIALOG_STYLE_LIST, "Sex Shop Itens", "{FFFFFF}Dildo roxo longo - {3D9140}$3500\n{FFFFFF}Vibrador branco pequeno - {3D9140}$2995\n{FFFFFF}Vibrato branco grander - {3D9140}$6250\n{FFFFFF}Vibrador de prata - {3D9140}$5000\n{FFFFFF}Nite Stick - {3D9140}$1200", "Comprar", "Cancelar");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, 745.4332, 1439.9840, 1102.7031)) //drug shop
- {
- if(IsInBizzID[playerid] <= 0) return SysMsg(playerid,"Você não esta em uma Loja.");
- if(BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Essa loja esta com estoque vazio.");
- Dialog_Show(playerid, DrugShopDialog, DIALOG_STYLE_LIST, "Itens de Drogaria",
- "{FFFFFF}Rolo de Papel (x10) - {3D9140}$40\n\
- {FFFFFF}Bong - {3D9140}$1350\n\
- {FFFFFF}Frasco de água destilada - {3D9140}$6\n\
- {FFFFFF}Sementes de Marijuana (x10) - {3D9140}$750",
- "Comprar", "Cancelar");
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 4.0, 2435.888916, 111.16863, 1001.593872)) //pc garage
- {
- if(IsInBizzID[playerid] <= 0) return SysMsg(playerid,"Você não esta em uma Loja.");
- if(BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Estamos atualmente sem estoque, por favor volte em outro momento.");
- gstr[0] = EOS;
- strcat(gstr, "{FFFFFF}Item\t{FFFFFF}Cost\n");
- strcat(gstr, "{FFFFFF}Container de combustível\t{3D9140}$125\n");
- strcat(gstr, "{FFFFFF}Carregador de celular para carro\t{3D9140}$395\n");
- strcat(gstr, "{FFFFFF}Óleo de motor supremo\t{3D9140}$115\n");
- strcat(gstr, "{FFFFFF}Caixa de ferramentas\t{3D9140}$350\n");
- Dialog_Show(playerid, ShopDialog, DIALOG_STYLE_TABLIST_HEADERS, "Garagem Palomino Creek", gstr, "Comprar", "Cancelar");
- return true;
- }
- return true;
- }
- CMD:medkit(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][MedKit] == 0) return SysMsg(playerid, "Você não tem um kit de primeiros socorros para usar.");
- if(MedKitAction[playerid] != 0 || MedKitActionPlayer[playerid] != -1) return SysMsg(playerid, "Você já está usando um medkit.");
- new Float:Health;
- if(strcmp("me", params, true) == 0)
- {
- foreach(new i: Player)
- {
- if(MedKitActionPlayer[i] == playerid)
- {
- return SysMsg(playerid, "Você já está sendo curado.");
- }
- }
- new nlwcount = 0, lwcount = 0;
- for(new x = 0; x < HitCount[playerid]; x++)
- {
- switch(Injuries[playerid][x][pWeaponID])
- {
- case 22..34,38: lwcount ++;
- default: nlwcount ++;
- }
- }
- if(lwcount >= 1) return SysMsg(playerid, "Você tem uma ferida letal. Você precisa de um tratamento médico adequado.");
- GetPlayerHealth(playerid, Health);
- if(Health == 100.0) return SysMsg(playerid, "Você está se sentindo perfeitamente bem assim não exija isso.");
- MedKitAction[playerid] = 20;
- OnePlayAnim(playerid, "CASINO", "dealone", 1.0, 1, 0, 0, 0, 20000);
- format(gstr, sizeof(gstr),"* %s abre um pequeno kit de primeiros socorros... *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /medkit [ID ou nome do jogador Ou 'me' para usar em você mesmo]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return cmd_medkit(playerid, "me");
- foreach(new i: Player)
- {
- if(MedKitActionPlayer[i] == playa)
- {
- return SysMsg(playerid, "Este jogador já está sendo curado.");
- }
- }
- new nlwcount = 0, lwcount = 0;
- for(new x = 0; x < HitCount[playa]; x++)
- {
- switch(Injuries[playa][x][pWeaponID])
- {
- case 22..34,38: lwcount ++;
- default: nlwcount ++;
- }
- }
- if(lwcount >= 1) return SysMsg(playerid, "Este jogador tem uma ferida letal. Eles precisam de um tratamento médico adequado.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,4.0,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para curá-los.");
- GetPlayerHealth(playa, Health);
- if(Health == 100.0) return SysMsg(playerid, "Esse jogador não exige isso.");
- MedKitAction[playerid] = 20;
- MedKitActionPlayer[playerid] = playa;
- SetPlayerToFacePlayer(playerid, playa);
- OnePlayAnim(playerid, "BOMBER", "BOM_Plant_Loop", 4.0, 1, 0, 0, 1, 0);
- OnePlayAnim(playa, "SWEET", "Sweet_injuredloop", 4.0, 1, 0, 0, 0, 0);
- SetTimerEx("UnTazePlayer", 20000, 0, "d", playerid);
- SetTimerEx("UnTazePlayer", 20000, 0, "d", playa);
- format(gstr, sizeof(gstr),"* %s abre um pequeno kit de primeiros socorros... *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- return true;
- }
- CMD:treinar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid, 5.0, 768.177551, -42.182048, 1000.686462)) return SysMsg(playerid, "Você precisa esta em uma Gym para fazer isso.");
- if(isnull(params)) return SysMsg(playerid,"Use: /treinar [boxer/kungfu]");
- PreloadAnimLib(playerid, "GYMNASIUM");
- PreloadAnimLib(playerid, "PARK");
- if(!strcmp("boxing", params, true) || !strcmp("boxer", params, true))
- {
- if(UsingFightStyle{playerid} == FIGHT_STYLE_BOXING) return SysMsg(playerid,"Você já estar usando seu estilo de luta Boxer.");
- if(FightStyleLearned[playerid]{FS_BOXING})
- {
- SysMsg(playerid,"Você já esta aprendendo Boxer.");
- if(UsingFightStyle{playerid} != FIGHT_STYLE_BOXING) SysMsg(playerid,"Para usar seu estilo de luta boxer, use /estiloluta (/sl).");
- return 1;
- }
- SetPlayerVirtualWorldEx(playerid, playerid+10000);
- //SetPlayerSkinEx(playerid, 81);
- SetPlayerPos(playerid, 768.280273, -36.697841, 1000.686462);
- SetPlayerFacingAngle(playerid, 220.9);
- TogglePlayerControllable(playerid, 0);
- SetPlayerCameraPos(playerid, 768.3822, -41.8251, 1000.1867);
- SetPlayerCameraLookAt(playerid, 764.3148, -32.6897, 1001.923);
- OnePlayAnim(playerid,"GYMNASIUM","GYMshadowbox",4.0,1,1,1,1,0);
- Dialog_Show(playerid, FightDialog, DIALOG_STYLE_MSGBOX, "Gym", "{FFFFFF}Você quer aprender a lugar o estilo {4897FF}Boxer{FFFFFF}?\nIsso custará {4897FF}$50,000", "Sim", "Não");
- SetPVarInt(playerid, "FStyleBuy", 1);
- }
- else if(!strcmp("kungfu", params, true) || !strcmp("kung fu", params, true))
- {
- if(UsingFightStyle{playerid} == FIGHT_STYLE_KUNGFU) return SysMsg(playerid,"You are already using your Kung Fu fighting style.");
- if(FightStyleLearned[playerid]{FS_KUNGFU})
- {
- SysMsg(playerid,"Você já esta aprendendo Kung Fu.");
- if(UsingFightStyle{playerid} != FIGHT_STYLE_KUNGFU) SysMsg(playerid,"Para usar seu estilo de luta kung fu, use /estiloluta (/sl).");
- return 1;
- }
- SetPlayerVirtualWorldEx(playerid, playerid+10000);
- //SetPlayerSkinEx(playerid, 49);
- SetPlayerPos(playerid, 768.280273, -36.697841, 1000.686462);
- SetPlayerFacingAngle(playerid, 220.9);
- TogglePlayerControllable(playerid, 0);
- SetPlayerCameraPos(playerid, 768.3822, -41.8251, 1000.1867);
- SetPlayerCameraLookAt(playerid, 764.3148, -32.6897, 1001.923);
- OnePlayAnim(playerid,"PARK","Tai_Chi_Loop",4.0,1,0,0,0,0);
- Dialog_Show(playerid, FightDialog, DIALOG_STYLE_MSGBOX, "Gym", "{FFFFFF}Você quer aprender {4897FF}Kung Fu{FFFFFF}?\nIsso custará {4897FF}$50,000", "Sim", "Não");
- SetPVarInt(playerid, "FStyleBuy", 2);
- }
- return true;
- }
- CMD:sl(playerid, params[]) return cmd_estiloluta(playerid, params);
- CMD:estiloluta(playerid, params[])
- {
- if(isnull(params)) return SysMsg(playerid,"Use: /estiloluta [normal/boxing/kungfu]");
- if(!strcmp(params, "normal", true) || !strcmp(params, "none", true) || !strcmp(params, "default", true))
- {
- if(UsingFightStyle{playerid} == FIGHT_STYLE_NORMAL) return SysMsg(playerid, "Você já está usando esse estilo de luta.");
- SetPlayerFightingStyle(playerid, FIGHT_STYLE_NORMAL);
- UsingFightStyle{playerid} = FIGHT_STYLE_NORMAL;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET FightStyle = %i WHERE id = %i", UsingFightStyle{playerid}, SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessage(playerid, -1, "Estilo de luta definido para 'normal'.");
- }
- else if(!strcmp(params, "boxing", true) || !strcmp(params, "boxer", true))
- {
- if(!FightStyleLearned[playerid]{FS_BOXING}) return SysMsg(playerid, "Você não conhece esse estilo de luta.");
- if(UsingFightStyle{playerid} == FIGHT_STYLE_BOXING) return SysMsg(playerid, "Você já está usando esse estilo de luta.");
- SetPlayerFightingStyle(playerid, FIGHT_STYLE_BOXING);
- UsingFightStyle{playerid} = FIGHT_STYLE_BOXING;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET FightStyle = %i WHERE id = %i", UsingFightStyle{playerid}, SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessage(playerid, -1, "Estilo de luta definido para 'Boxing'.");
- }
- else if(!strcmp(params, "kungfu", true) || !strcmp(params, "kung fu", true))
- {
- if(!FightStyleLearned[playerid]{FS_KUNGFU}) return SysMsg(playerid, "Você não conhece esse estilo de luta.");
- if(UsingFightStyle{playerid} == FIGHT_STYLE_KUNGFU) return SysMsg(playerid, "Você já está usando esse estilo de luta.");
- SetPlayerFightingStyle(playerid, FIGHT_STYLE_KUNGFU);
- UsingFightStyle{playerid} = FIGHT_STYLE_KUNGFU;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET FightStyle = %i WHERE id = %i", UsingFightStyle{playerid}, SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessage(playerid, -1, "Estilo de luta definido para 'Kung Fu'.");
- }
- return true;
- }
- CMD:pagar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1, PayCash, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]i", name, PayCash)) return SysMsg(playerid,"Use: /pagar [ID ou nome do jogador] [Quantidade a pagar]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode pagar a si mesmo.");
- if(PayCash < 1 || PayCash > 1000000) return SysMsg(playerid,"O dinheiro deve estar entre $1 e $1,000,000.");
- if(PayCash > Cash[playerid]) return SysMsg(playerid,"Você não tem essa quantidade de dinheiro.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.5,tX,tY,tZ) || IsSpectating[playa] > -1) return SysMsg(playerid,"Você deve estar perto do jogador para pagá-lo.");
- GivePlayerCash(playerid, -PayCash);
- GivePlayerCash(playa, PayCash);
- SendClientMessageF(playerid, COLOR_LIGHTGREEN, "Você deu a %s $%s",NameRP(playa),format_cash(PayCash));
- SendClientMessageF(playa, COLOR_LIGHTGREEN, "%s te deu $%s",NameRP(playerid),format_cash(PayCash));
- format(gstr, sizeof(gstr),"* %s tira algum dinheiro da carteira e dá para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(!IsPlayerInAnyVehicle(playerid) && !IsPlayerInAnyVehicle(playa))
- {
- SetPlayerToFacePlayer(playerid, playa);
- OnePlayAnim(playerid, "DEALER", "shop_pay", 3.5, 0, 0, 0, 0, 0);
- }
- format(gstr, sizeof(gstr),"[%s] %s(%i) pagou %s(%i) $%i. (Total: $%i)", GetServerTimeString(), NameEx(playerid), playerid, NameEx(playa), playa, PayCash, Cash[playerid]);
- AddToLog("cash", gstr);
- if(PayCash >= 1000000)
- {
- format(gstr, sizeof(gstr), "[Admin] %s deu %s $%i.", NameEx(playerid), NameEx(playa), PayCash);
- AdminBroadcast(gstr, 0);
- }
- return true;
- }
- CMD:asscheque(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Checks] == 0) return SysMsg(playerid, "Você não tem nenhum talão de cheque para assinar.");
- new playa = -1, PayCash, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]i", name, PayCash)) return SysMsg(playerid,"Use: /asscheque [ID ou nome do jogador] [Valor]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode dar um Cheque a si mesmo.");
- if(PayCash < 10 || PayCash > 50000000) return SysMsg(playerid,"O valor deve estar entre $10 e $50,000,000.");
- if(PayCash > BankBalance[playerid]) return SysMsg(playerid,"Você não tem essa quantia de dinheiro em seu banco.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.0,tX,tY,tZ)) return SysMsg(playerid,"Você precisa estar proximo ao jogador para fazer isso.");
- new checkslot = -1;
- for(new i = 0; i < 3; i++)
- {
- if(PlayerChecks[playa][i] == 0) checkslot = i;
- }
- if(checkslot == -1) return SysMsg(playerid, "Esse jogador não pode receber mais cheques.");
- BankBalance[playerid] -= PayCash;
- Inventory[playerid][Checks] --;
- PlayerChecks[playa][checkslot] = PayCash;
- MySQLUpdateInt(SQLID[playerid], "Bank", BankBalance[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "Checks", Inventory[playerid][Checks], "players");
- new str[8];
- for(new x = 0; x < 3; x++)
- {
- format(str, sizeof(str), "Check%i", x + 1);
- MySQLUpdateInt(SQLID[playa], str, PlayerChecks[playa][x], "players");
- }
- SendClientMessageF(playerid, COLOR_LIGHTGREEN, "Você assinou um cheque de $%s e deu para %s", format_cash(PayCash), NameRP(playa));
- SendClientMessageF(playa, COLOR_LIGHTGREEN, "%s te deu um cheque de $%s. Vá para o banco para deposita-lo. (Cheques Slot %i)", NameRP(playerid), format_cash(PayCash), checkslot + 1);
- format(gstr, sizeof(gstr),"* %s tira uma folha do bloco de talões de cheque, assina um cheque e entrega a %s. *", NameRP(playerid), NameRP(playa));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(!IsPlayerInAnyVehicle(playerid) && !IsPlayerInAnyVehicle(playa))
- {
- SetPlayerToFacePlayer(playerid, playa);
- OnePlayAnim(playerid, "DEALER", "shop_pay", 3.5, 0, 0, 0, 0, 0);
- }
- format(gstr, sizeof(gstr),"[%s] %s(%i) assina um cheque no valor de $%i para %s(%i).", GetServerTimeString(), NameEx(playerid), playerid, PayCash, NameEx(playa), playa);
- AddToLog("cash", gstr);
- return true;
- }
- CMD:obtertaloes(playerid, params[])//obtertaloes
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Checks] > 0) return SysMsg(playerid, "Você já tem um talão de Cheques.");
- if(!IsInBank(playerid)) return SysMsg(playerid,"Você precisa estar em um banco.");
- if(Cash[playerid] < 25) return SysMsg(playerid, "Você precisa, pelo menos, de $25 para obter um talão de cheques.");
- Inventory[playerid][Checks] = 50;
- GivePlayerCash(playerid, -25);
- MySQLUpdateInt(SQLID[playerid], "Checks", Inventory[playerid][Checks], "players");
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "Você agora tem um novo talão de cheques (50 cheques bancários) Isso custa $25.");
- return true;
- }
- CMD:depositarcheque(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsInBank(playerid)) return SysMsg(playerid, "Você não está em um banco.");
- new checkslot;
- if(sscanf(params, "i", checkslot)) return SysMsg(playerid,"Use: /depositarcheque [Slot do Cheque] *Olhe o Slot em /cheques*");
- if(checkslot < 1 || checkslot > 3) return SysMsg(playerid,"O slot de verificação deve ser 1, 2 or 3.");
- checkslot --;
- if(PlayerChecks[playerid][checkslot] == 0) return SysMsg(playerid,"Não há cheque nesse slot para depositar.");
- BankBalance[playerid] += PlayerChecks[playerid][checkslot];
- MySQLUpdateInt(SQLID[playerid], "Bank", BankBalance[playerid], "players");
- new str[8];
- for(new x = 0; x < 3; x++)
- {
- format(str, sizeof(str), "Check%i", x + 1);
- if(checkslot != x) MySQLUpdateInt(SQLID[playerid], str, PlayerChecks[playerid][x], "players");
- else MySQLUpdateInt(SQLID[playerid], str, 0, "players");
- }
- format(gstr, sizeof(gstr), "EXTRATO BANCÁRIO - %s @ %s\nBalance Antigo: $%s\nDeposito de Cheque: $%s\n\nNovo Balance: $%s", NameEx(playerid), GetTimeString(), format_cash(BankBalance[playerid]-PlayerChecks[playerid][checkslot]), format_cash(PlayerChecks[playerid][checkslot]), format_cash(BankBalance[playerid]));
- ShowMessage(playerid, "Gerênciamento bancário - Declaração de Cheque", gstr, "Ok");
- format(gstr, sizeof(gstr), "[%s] %s(%i) deposita um cheque por $%i.", GetServerTimeString(), NameEx(playerid), playerid, PlayerChecks[playerid][checkslot]);
- AddToLog("cash", gstr);
- PlayerChecks[playerid][checkslot] = 0;
- format(gstr,sizeof(gstr),"* %s deposita um cheque. *", NameRP(playerid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:cheques(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- SendClientMessageF(playerid, COLOR_WHITE, "[Inventário] Você atualmente tem %i cheques bancário.", Inventory[playerid][Checks]);
- new count, value;
- for(new i = 0; i < 3; i++)
- {
- if(PlayerChecks[playerid][i] > 0)
- {
- count ++;
- value += PlayerChecks[playerid][i];
- format(gstr, sizeof(gstr), "Slot de Cheque %i: $%s para depositar", i + 1, format_cash(PlayerChecks[playerid][i]));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- else
- {
- format(gstr, sizeof(gstr), "Slot de Cheque %i: Nenhum", i + 1);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Você tem %i cheques pronto para depositar no banco, gerando um valor de $%s.", count, format_cash(value));
- return true;
- }
- CMD:cumprimentar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /fcumprimentar [ID ou nome do jogador]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode fazer isso em si mesmo.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso em um veiculo.");
- if(GetPlayerVehicleID(playa) > 0) return SysMsg(playerid,"Você não pode fazer isso com alguém que esteja dentro de um veiculo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ) || IsSpectating[playa] != -1) return SysMsg(playerid,"Você precisa estar próximo ao jogador para cumprimenta-lo.");
- RequestedToShake[playa] = playerid;
- SetTimerEx("CancelPlayerHandShake", 15000, 0, "ii", playerid, playa);
- format(gstr, sizeof(gstr),"%s deseja te cumprimentar com um aperto de mão, use '/aceitar cumprimento' para continuar (Isso será tempo limite em 15 segundos)", NameRP(playerid));
- SendClientMessage(playa,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Você pediu para cumprimentar %s com um aperto de mão, ele precisa aceitar a ação primeiro (Isso será tempo limite em 15 segundos)", NameRP(playa));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- return true;
- }
- CMD:fcumprimentar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /fcumprimentar [ID ou nome do jogador]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode usar esse comando em si mesmo.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso em um veiculo.");
- if(GetPlayerVehicleID(playa) > 0) return SysMsg(playerid,"Você não pode fazer isso com alguém que esteja dentro de um veiculo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ) || IsSpectating[playa] != -1) return SysMsg(playerid,"Você precisa estar próximo ao jogador para cumprimenta-lo.");
- RequestedToFShake[playa] = playerid;
- SetTimerEx("CancelPlayerFHandShake", 15000, 0, "ii", playerid, playa);
- format(gstr, sizeof(gstr),"%s quer que cumprimentar apertando sua mão (formal), use '/aceitar fcumprimento' para continuar (Isso será tempo limite em 15 segundos)", NameRP(playerid));
- SendClientMessage(playa,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Você pediu para cumprimentar %s com aperto de mão (formal), ele precisa aceitar primeiro (Isso será tempo limite em 15 segundos)", NameRP(playa));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- return true;
- }
- CMD:beijar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /beijar [ID ou nome do jogador]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode fazer isso em si mesmo.");
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso dentro de um veiculo.");
- if(GetPlayerVehicleID(playa) > 0) return SysMsg(playerid,"Você não pode fazer isso se a outra pessoa estiver dentro do veiculo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ) || IsSpectating[playa] != -1) return SysMsg(playerid,"Você deve estar perto do jogador para beijá-los.");
- RequestedToKiss[playa] = playerid;
- SetTimerEx("CancelPlayerKiss", 15000, 0, "ii", playerid, playa);
- SendClientMessageF(playa, COLOR_WHITE, "%s quer beijar você, use '/aceitar beijo' para continuar. (Isso será tempo limite em 15 segundos)", NameRP(playerid));
- SendClientMessageF(playerid, COLOR_WHITE, "Você pediu para beijar %s. Essa pessoa deve aceitar primeiro. (Isso será tempo limite em 15 segundos)", NameRP(playa));
- return true;
- }
- CMD:comprarbilhete(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsPlayerInRangeOfPoint(playerid,5.5,-27.167560,-89.524269,1003.546875) || IsPlayerInRangeOfPoint(playerid,5.5,-23.428977, -55.200191, 1003.546875) || IsPlayerInRangeOfPoint(playerid,5.5,2.20236, -28.508106, 1003.549438) || IsPlayerInRangeOfPoint(playerid, 5.5, 1248.3158,204.4189,2020.6406) || IsPlayerInRangeOfPoint(playerid, 5.5, 663.9998,-568.8943,16.3363))
- {
- if(IsPlayingLottery{playerid}) return SysMsg(playerid,"Você já comprou um ingresso. Aguarde até o sorteio.");
- if(Cash[playerid] < 5) return SysMsg(playerid,"Você não tem 5$ para comprar um bilhete de Loteria.");
- new ticketnumber;
- if(sscanf(params, "i", ticketnumber)) return SysMsg(playerid,"Use: /comprarbilhete [número]");
- if(ticketnumber < 1 || ticketnumber > 99) return SysMsg(playerid,"O número é inválido! (Número dever ser de 1 a 99)");
- LotteryNumber[playerid] = ticketnumber;
- IsPlayingLottery{playerid} = true;
- GivePlayerCash(playerid,-5);
- LotteryJackpot += 5;
- new DrawHour;
- DrawHour = gServerHour + 1;
- if(gServerHour == 23)
- {
- DrawHour = 0;
- }
- format(gstr, sizeof(gstr),"Obrigado por comprar um bilhete de loteria para $5: Seu número é %i, Boa sorte!", ticketnumber);
- SendClientMessage(playerid,COLOR_MAGENTA,gstr);
- format(gstr, sizeof(gstr),"Um sorteio é realizado por hora, e o próximo sorteio será em %i:00 ((Hora em GAME)) com jackpot atual de $%s.", DrawHour, format_cash(LotteryJackpot));
- SendClientMessage(playerid,COLOR_MAGENTA,gstr);
- printf("[Loteria] %s compra um bilhete de loteria: %i", NameEx(playerid), ticketnumber);
- }
- else SysMsg(playerid, "Você deve estar em uma loja geral para comprar um bilhete de loteria.");
- return true;
- }
- CMD:aposta(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerInRangeOfPoint(playerid,5.0,-2167.633544,643.458557,1052.375000)) return SysMsg(playerid,"Você não está na loja de apostas.");
- new HorseID, CashBet;
- if(sscanf(params, "ii", HorseID, CashBet)) return SysMsg(playerid,"Use: /aposta [ID do cavalo] [Valor da Aposta]");
- if(HorseID < 1 || HorseID > 5) return SysMsg(playerid,"Identificação de cavalo inválida. Deve ser entre 1 e 5.");
- if(CashBet < 50 || CashBet > 5000) return SysMsg(playerid,"Coloque uma aposta pelo menos $50 e não mais do que $5000.");
- if(Cash[playerid] < CashBet) return SysMsg(playerid,"Você não tem dinheiro suficiente.");
- if(HasBet[playerid] == 1) return SysMsg(playerid, "Você já colocou uma aposta.");
- SetPlayerCameraPos(playerid, -2162.9819, 640.2431, 1056.1741);
- SetPlayerCameraLookAt(playerid, -2172.0449, 644.4693, 1052.9184);
- SetPlayerPos(playerid, -2168.866699,644.429626,1052.375000);
- SetPlayerFacingAngle(playerid, 47.650478);
- TogglePlayerControllable(playerid,false);
- GivePlayerCash(playerid,-CashBet);
- HasBet[playerid] = 1;
- SetTimerEx("OnPlayerBetFinished",10000,0,"ddd",playerid,CashBet,HorseID);
- SendClientMessage(playerid,COLOR_PINK,"Aguarde até a conclusão da corrida...");
- ShowInfoText(playerid, "~w~Corrida em Progresso ~n~~b~Por favor aguarde", 9500);
- return true;
- }
- CMD:comprarroupas(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsChangingSkin{playerid}) return SysMsg(playerid,"Você já está comprando roupas.");
- if(IsInBizzID[playerid] > 0 && BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Este negócio não tem estoque restante.");
- new shop_id = -1;
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 207.674606, -103.337852, 1005.257812)) shop_id = 1; // BINCO
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 207.036727, -129.569824, 1003.507812)) shop_id = 2; // PROLAPS
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 204.281341, -159.792633, 1000.523437)) shop_id = 3; // DEIDER SACHS
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 203.805587, -44.099208, 1001.804687)) shop_id = 4; // SUB URB
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 161.584900, -85.259500, 1001.804700)) shop_id = 5;
- if(shop_id == -1) return SysMsg(playerid,"Você deve estar em uma loja de roupas para mudar sua pele.");
- ClothesShop[playerid] = shop_id;
- Dialog_Show(playerid, ClothingBuy, DIALOG_STYLE_LIST, "Loja de Roupas", "Comprar roupas\n", "Selecionar", "Cancelar");
- return true;
- }
- CMD:compraitens(playerid, params[]) //loja de itens
- {
- if(!Logged{playerid}) return true;
- if(IsChangingSkin{playerid}) return SysMsg(playerid,"Você já está comprando.");
- if(IsInBizzID[playerid] > 0 && BizzData[IsInBizzID[playerid]][BizzOwnerSQLID] > 0 && BizzData[IsInBizzID[playerid]][BizzStock] <= 0) return SysMsg(playerid,"Este negócio não tem estoque restante.");
- new shop_id = -1;
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 207.674606, -103.337852, 1005.257812)) shop_id = 1; // BINCO
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 207.036727, -129.569824, 1003.507812)) shop_id = 2; // PROLAPS
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 204.281341, -159.792633, 1000.523437)) shop_id = 3; // DEIDER SACHS
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 203.805587, -44.099208, 1001.804687)) shop_id = 4; // SUB URB
- if(IsPlayerInRangeOfPoint(playerid, 4.5, 161.584900, -85.259500, 1001.804700)) shop_id = 5;
- if(shop_id == -1) return SysMsg(playerid,"Você deve estar em uma loja de roupas para mudar sua pele.");
- ClothesShop[playerid] = shop_id;
- Dialog_Show(playerid, ClothingBuy, DIALOG_STYLE_LIST, "Loja de acessórios", "\nItens", "Selecionar", "Cancelar");
- return true;
- }
- CMD:mudarroupas(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado para mudar sua Skin.");
- if(IsJailed[playerid] == 1) return SysMsg(playerid,"Aguarde até sair da prisão.");
- if(PlayerImprisoned{playerid}) return SysMsg(playerid,"Você não pode fazer isso na prisão.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid,"Esta ação não pode ser realizada se você estiver algemado.");
- if(JobDuty[playerid] == 1) return SysMsg(playerid, "Você não pode troca de roupas estando aDuty.");
- if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SysMsg(playerid, "Você precisa esta a pé para mudar de roupas.");
- if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_ENTER_VEHICLE || GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_EXIT_VEHICLE) return SysMsg(playerid, "Você não pode usar esse comando se estiver entrando/saindo de um veiculo.");
- if(SwatMode[playerid] == 1) return SysMsg(playerid, "Você não pode usar isso enquanto estiver em S.W.A.T duty.");
- if((Duty[playerid] == 1 && IsCop(playerid)) || Duty[playerid] == 0)
- {
- new Slot;
- if(sscanf(params, "i", Slot)) return SysMsg(playerid,"Use: /mudarroupas [slot] - Olhe em /Roupas os slots.");
- if(Slot < 1 || Slot > 5) return SysMsg(playerid,"O número do slot deve ser de 1 a 5.");
- Slot --;
- if(Clothes[playerid][Slot] == 0) return SysMsg(playerid,"Você não tem roupas nasse slot.");
- if(Clothes[playerid][Slot] == cPlayersSkin[playerid]) return SysMsg(playerid,"Você já está usando as roupas naquele slot.");
- SetPlayerSkinEx(playerid, Clothes[playerid][Slot]);
- cPlayersSkin[playerid] = Clothes[playerid][Slot];
- MySQLUpdateInt(SQLID[playerid], "Skin", cPlayersSkin[playerid], "players");
- Slot ++;
- format(gstr, sizeof(gstr),"* %s muda suas roupas. *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr), "Você mudou para seu slot de roupas %i.", Slot);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else return SysMsg(playerid,"Você não pode mudar de roupas se estiver OnDuty.");
- return true;
- }
- CMD:roupas(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado para mudar a sua skin.");
- new tempstr[50];
- format(gstr, sizeof(gstr), "Inventário de roupas: ");
- for(new i = 0; i < 4; i++)
- {
- if(Clothes[playerid][i] > 0)
- {
- format(tempstr, 50, "[Slot %i: %i] ", i+1, Clothes[playerid][i]);
- strcat(gstr, tempstr);
- }
- else
- {
- format(tempstr, 50, "[Slot %i: Vazio] ", i+1);
- strcat(gstr, tempstr);
- }
- }
- if(Clothes[playerid][4] > 0)
- {
- format(tempstr, 50, "[Facção: %i] ", Clothes[playerid][4]);
- strcat(gstr, tempstr);
- }
- else strcat(gstr, "[Facção: Vazio] ");
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- return true;
- }
- CMD:aceitar(playerid, params[]) // comando de aceitar
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- new option[32], value[32];
- if(sscanf(params, "s[32]S()[32]", option, value)) return true;
- if(strmatch(option, "faction") || strmatch(option, "faccao") || strmatch(option, "facçao") || strmatch(option, "facção") || strmatch(option, "faccão"))
- {
- if(InvitedToJoinFaction[playerid] == 0) return SysMsg(playerid,"Você não foi convidado para uma facção.");
- if(InvitedToJoinFaction[playerid] > 0)
- {
- Faction[playerid] = InvitedToJoinFaction[playerid];
- FactionRank[playerid] = 1;
- MySpawnID[playerid] = 2;
- SubFactionSpawn[playerid] = 1;
- SendClientMessageF(playerid,COLOR_ORANGE,"Você entrou na facção %i (%s) como rank %i (%s)",Faction[playerid],GetFactionName(playerid),FactionRank[playerid],GetFactionRankName(Faction[playerid], FactionRank[playerid]));
- if(InvitedToJoinFaction[playerid] == 7) UnlockAchievement(playerid, 66);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET Faction = %i, FactionRank = 1, MySpawnID = 2, SubFactionSpawn = 1 WHERE id = %i", InvitedToJoinFaction[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- foreach(new players: Player)
- {
- if(players == playerid) continue;
- if(Faction[players] == Faction[playerid] && FactionRank[players] >= 4) SendClientMessageF(players,COLOR_ORANGE,"%s agora esta na sua facção (%s) como rank %s.",NameEx(playerid),GetFactionName(playerid),GetFactionRankName(Faction[playerid], FactionRank[playerid]));
- }
- //GivePlayerWeapons(playerid);
- InvitedToJoinFaction[playerid] = 0;
- //new oldSub[2], newSub[2], oldRank, newRank;
- //FactionLog(InvitedToJoinFactionBy[playerid], SQLID[playerid], 4, oldSub, newSub, oldRank, newRank, InvitedToJoinFaction[playerid]);
- InvitedToJoinFaction[playerid] = 0;
- InvitedToJoinFactionBy[playerid] = 0;
- UnlockAchievement(playerid, 5);
- return true;
- }
- }
- else if(strmatch(option, "multa"))
- {
- if(PoliceFineAmount[playerid] == -1) return SysMsg(playerid, "Nenhuma multa para aceitar.");
- if(sscanf(params, "s[32]s[32]", option, value)) return SysMsgF(playerid, "Use: /aceitar multa [Valor a pagar] *Não pode exceder sua multa policial pendente de $%s*", format_cash(PoliceFineAmount[playerid]));
- if(!IsNumeric(value)) return SysMsg(playerid, "A valor deve ser inserido em números.");
- new amount = strval(value);
- if(amount > PoliceFineAmount[playerid]) return SysMsg(playerid, "Você não deve isso em multas.");
- if(amount <= 0) return SysMsg(playerid, "Você deve inserir um valor acima de 0.");
- if(PoliceFineAmount[playerid] - amount < 0) return SysMsg(playerid, "Você não deve tanto em multas.");
- if(Cash[playerid] < amount) return SysMsg(playerid, "Você não tem tanto dinheiro.");
- new minfine = floatround(0.1 * PoliceFineAmount[playerid]);
- if(amount < minfine) return SysMsgF(playerid, "Você deve pagar pelo menos 10 porcento ($%s) de sua multa em um determinado momento.", format_cash(minfine));
- GivePlayerCash(playerid, -amount);
- FACTIONS[FACTION_COP][FactionBankBalance] += floatround(0.7 * amount);
- MySQLUpdateInt(FACTION_COP, "BankBalance", FACTIONS[FACTION_COP][FactionBankBalance], "factions");
- format(gstr, sizeof(gstr), "%s pagou $%s fora de sua $%s multa. O dinheiro foi adicionado ao banco da facção.", NameEx(playerid), format_cash(amount), format_cash(PoliceFineAmount[playerid]));
- PoliceMessage(gstr);
- SendClientMessageF(playerid, COLOR_ORANGE, "Você pagou uma multa de trânsito no valor de $%s.", format_cash(amount), format_cash(PoliceFineAmount[playerid]));//Você pagou $%s fora de sua $%s multa
- PoliceFineAmount[playerid] -= amount;
- if(PoliceFineAmount[playerid] == 0) PoliceFineAmount[playerid] = -1;
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET PoliceFine = %i WHERE id = %i", PoliceFineAmount[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- return true;
- }
- else if(strmatch(option, "quitfaction") || strmatch(option, "sairfaccao") || strmatch(option, "sairfacçao") || strmatch(option, "sairfacção") || strmatch(option, "sairfaccão"))
- {
- if(QuitFromFaction[playerid] == 0) return SysMsg(playerid, "Você não está em nenhuma facção.");
- SendClientMessageF(playerid, COLOR_WHITE, "Você saiu da facção %s. Você não está mais nesta facção.", GetFactionName(playerid));
- if(MySpawnID[playerid] == 2)
- {
- MySpawnID[playerid] = 1;
- SubFactionSpawn[playerid] = 0;
- }
- if(Clothes[playerid][0] == 0)
- {
- cPlayersSkin[playerid] = 1;
- SetPlayerSkinEx(playerid, 1);
- }
- if(Clothes[playerid][0] != 0)
- {
- cPlayersSkin[playerid] = Clothes[playerid][0];
- SetPlayerSkinEx(playerid, Clothes[playerid][0]);
- }
- MySQLUpdateInt(SQLID[playerid], "Skin", cPlayersSkin[playerid], "players");
- if(RadioFrequency[playerid] == FACTIONS[Faction[playerid]][FactionRadioChannel]) RadioFrequency[playerid] = 1000;
- for(new r = 0; r < 3; r++)
- {
- if(RadioSlot[playerid][r] == FACTIONS[Faction[playerid]][FactionRadioChannel])
- {
- RadioSlot[playerid][r] = 1000;
- }
- }
- Faction[playerid] = 0;
- FactionRank[playerid] = 0;
- QuitFromFaction[playerid] = 0;
- FactionCustomRank[playerid][0] = EOS;
- IsESU{playerid} = false;
- if(RestrictedVest{playerid}) SetPlayerArmourEx(playerid, 0.0, 1);
- ResetPlayerWeapons(playerid);
- for(new slot = MAX_TOTAL_WEAPONS - 1; slot != -1; slot--)
- {
- if(WeaponData[playerid][slot][WeaponOrigin] == 3)
- {
- ResetWeaponVariables(playerid, 0, slot);
- }
- }
- for(new slot = MAX_TOTAL_WEAPONS - 1; slot != -1; slot--)
- {
- GivePlayerWeapon(playerid, WeaponData[playerid][slot][Weapon], WeaponData[playerid][slot][WeaponAmmo]);
- }
- for(new p; p < MAX_TOYS; p++)
- {
- if(ToyInfo[playerid][p][FactionMask] == 1)
- {
- ClearToyData(playerid, p);
- }
- }
- FirePlayer(SQLID[playerid], 1); //FirePlayer is used here because the queries with /despedir and /accept quitfaction are basically the same.
- return true;
- }
- else if(strmatch(option, "resgate"))
- {
- if(WantsRescue[playerid] == 0 || WantsRescue[playerid] == 1) return true;
- new playa = WantsRescue[playerid] - 500;
- if(IsPlayerConnected(playa))
- {
- SendClientMessageF(playa, COLOR_WHITE, "%s aceitou sua ajuda.", NameEx(playerid));
- SendClientMessageF(playerid, COLOR_WHITE, "Você aceitou a ajuda do bombeiro %s.", NameEx(playa));
- }
- WantsRescue[playerid] = 1;
- }
- else if(strmatch(option, "casa")) //aceitar casa //aceitar casa
- {
- foreach(new i: Player)
- {
- if(IsPlayerNPC(i)) continue;
- if(SellingAsset[i][1] == playerid)
- {
- if(SellingAsset[i][2] != 1) return SysMsg(playerid,"Você não tem casa para aceitar.");
- if(HasHouseKey[i][0] != SellingAsset[i][3] && HasHouseKey[i][1] != SellingAsset[i][3])
- {
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- SellingAsset[i][5] = -1; //house slot
- SysMsg(playerid,"A casa já não está disponível.");
- return true;
- }
- if(Cash[playerid] < SellingAsset[i][4])
- {
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- SellingAsset[i][5] = -1; //house slot
- SysMsg(playerid,"Você não tem dinheiro suficiente para comprar a casa.");
- return true;
- }
- HasHouseKey[i][SellingAsset[i][5]] = -1;
- HouseData[SellingAsset[i][3]][HouseOwnerSQLID] = SQLID[playerid];
- MySpawnID[playerid] = 3;
- ProcessHouseKey(playerid);
- ProcessHouseKey(SellingAsset[i][5]);
- if(HasHouseKey[playerid][0] == SellingAsset[i][3]) SpawnAtHouse[playerid] = 0;
- else if(HasHouseKey[playerid][1] == SellingAsset[i][3]) SpawnAtHouse[playerid] = 1;
- MySQLUpdateInt(HouseData[SellingAsset[i][3]][HouseSQLID], "OwnerSQLID", SQLID[playerid], "houses");
- MySQLUpdateInt(SQLID[playerid], "MySpawnID", MySpawnID[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "SpawnAtHouse", SpawnAtHouse[playerid], "players");
- GivePlayerCash(playerid, -SellingAsset[i][4]);
- GivePlayerCash(i, SellingAsset[i][4]);
- UnlockAchievement(playerid, 9);
- ShowInfoText(playerid, "~w~PROPRIEDADE ADQUIRIDA", 5000);
- SendClientMessageF(i, COLOR_WHITE, "%s comprou sua casa(%s) por $%s. Você não é mais o proprietário.", NameEx(playerid), HouseData[SellingAsset[i][3]][HouseDescription], format_cash(SellingAsset[i][4]));
- SendClientMessageF(playerid, COLOR_WHITE, "Você comprou a casa de %s (%s) por $%s. Você é agora o novo dono desta propriedade.", NameEx(i), HouseData[SellingAsset[i][3]][HouseDescription], format_cash(SellingAsset[i][4]));
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET GuestHouseID = 0 WHERE GuestHouseID = %i", HouseData[SellingAsset[i][3]][HouseSQLID]);
- mysql_pquery(conn, mquery);
- foreach(new x: Player) if(HouseData[SellingAsset[i][3]][HouseSQLID] == GuestHouseID[x]) GuestHouseID[x] = 0;
- SendClientMessage(i, COLOR_WHITE, "Os convidados da sua casa (caso existam) foram expulsos automaticamente depois de vender a casa.");
- if(MySpawnID[i] == 3)
- {
- MySpawnID[i] = 1;
- MySQLUpdateInt(SQLID[i], "MySpawnID", MySpawnID[i], "players");
- }
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- SellingAsset[i][5] = -1; //house slot
- break;
- }
- }
- }
- else if(strmatch(option, "negocio"))
- {
- foreach(new i: Player)
- {
- if(IsPlayerNPC(i)) continue;
- if(SellingAsset[i][1] == playerid)
- {
- if(SellingAsset[i][2] != 2) return SysMsg(playerid,"Você não tem bizz para aceitar.");
- new hasBizz = 0;
- for(new bz = 0; bz < MAX_BIZZ_PER_PLAYER; bz++)
- {
- if(PlayerBizzID[i][bz] == SellingAsset[i][3]) hasBizz = 1;
- }
- if(hasBizz == 0)
- {
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- SysMsg(playerid,"O bizz não está mais disponível.");
- return true;
- }
- if(Cash[playerid] < SellingAsset[i][4])
- {
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- SysMsg(playerid,"Você não tem dinheiro suficiente para comprar o bizz.");
- return true;
- }
- BizzData[SellingAsset[i][3]][BizzOwnerSQLID] = SQLID[playerid];
- MySQLUpdateInt(BizzData[SellingAsset[i][3]][BizzSQLID], "OwnerSQLID", SQLID[playerid], "bizz");
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM bizzmods WHERE BizzID = %i", BizzData[SellingAsset[i][3]][BizzSQLID]);
- mysql_pquery(conn, mquery);
- GivePlayerCash(playerid, -SellingAsset[i][4]);
- GivePlayerCash(i, SellingAsset[i][4]);
- new done[2] = {0};
- for(new id = 0; id < MAX_BIZZ_PER_PLAYER; id++)
- {
- if(done[0] == 0 && PlayerBizzID[i][id] == SellingAsset[i][3])
- {
- PlayerBizzID[i][id] = -1;
- done[0] = 1;
- }
- if(done[1] == 0 && PlayerBizzID[playerid][id] <= 0)
- {
- PlayerBizzID[playerid][id] = SellingAsset[i][3];
- done[1] = 1;
- }
- }
- new h = SellingAsset[i][3];
- UpdateBizzLabel(h);
- ShowInfoText(playerid, "~w~NEGÓCIO ADQUIRIDO", 5000);
- SendClientMessageF(i, COLOR_WHITE, "%s comprou seu negócio (%s) por $%s. Você não é mais o proprietário.", NameEx(playerid), BizzData[SellingAsset[i][3]][BizzDescription], format_cash(SellingAsset[i][4]));
- SendClientMessageF(playerid, COLOR_WHITE, "Você comprou o negócio de %s (%s) por $%s. Agora você é o novo dono.", NameEx(i), BizzData[SellingAsset[i][3]][BizzDescription], format_cash(SellingAsset[i][4]));
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- break;
- }
- }
- }
- else if(strmatch(option, "veiculo"))
- {
- foreach(new i: Player)
- {
- if(IsPlayerNPC(i)) continue;
- if(SellingAsset[i][1] == playerid)
- {
- if(SellingAsset[i][2] != 3) return SysMsg(playerid,"Você não tem nenhum veículo para aceitar.");
- new hasBizz = 0;
- for(new bz = 1, x = GetVehiclePoolSize(); bz <= x; bz++)
- {
- if(VehicleData[bz][VehicleOwnerSQLID] == SQLID[i])
- if(bz == SellingAsset[i][3]) hasBizz = 1;
- }
- if(hasBizz == 0)
- {
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- SysMsg(playerid,"O veículo não está mais disponível.");
- return true;
- }
- if(Cash[playerid] < SellingAsset[i][4])
- {
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- SysMsg(playerid,"Você não tem dinheiro suficiente para comprar o veículo.");
- return true;
- }
- new v = SellingAsset[i][3];
- VehicleData[v][VehicleOwnerSQLID] = SQLID[playerid];
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE vehicles SET OwnerSQLID = %i, HotwireExpiration = 0 WHERE id = %i", SQLID[playerid], VehicleData[v][VehSQLID]);
- mysql_pquery(conn, mquery);
- GivePlayerCash(playerid, -SellingAsset[i][4]);
- GivePlayerCash(i, SellingAsset[i][4]);
- if(VehicleData[v][VehicleModel] == 508 && MySpawnID[i] == 6)
- {
- MySpawnID[i] = 1;
- MySQLUpdateInt(SQLID[i], "MySpawnID", MySpawnID[i], "players");
- }
- ShowInfoText(playerid, "~w~VEICULO ADQUIRIDO", 5000);
- SendClientMessageF(i, COLOR_WHITE, "%s comprou seu veículo(%s) por $%s. Você não é mais o proprietário.", NameEx(playerid), GetVehicleNameEx(VehicleData[v][VehicleModel]), format_cash(SellingAsset[i][4]));
- SendClientMessageF(playerid, COLOR_WHITE, "Você comprou o veiculo de %s (%s) por $%s. Agora você é o novo dono.", NameEx(i), GetVehicleNameEx(VehicleData[v][VehicleModel]), format_cash(SellingAsset[i][4]));
- if(VehicleData[v][ForSale])
- {
- VehicleData[v][ForSale] = false;
- VehicleData[v][ForSalePrice] = 0;
- DestroyDynamic3DTextLabel(VehicleData[v][ForSaleLabel]);
- VehicleData[v][ForSaleLabel] = Text3D:INVALID_3DTEXT_ID;
- MySQLUpdateInt(VehicleData[v][VehSQLID], "ForSale", 0, "vehicles");
- MySQLUpdateInt(VehicleData[v][VehSQLID], "ForSalePrice", 0, "vehicles");
- }
- SellingAsset[i][0] = 0; //yes/no
- SellingAsset[i][1] = -1; //playerid
- SellingAsset[i][2] = 0; //type
- SellingAsset[i][3] = -1; //id
- SellingAsset[i][4] = 0; //price
- break;
- }
- }
- }
- else if(strmatch(option, "spray"))
- {
- if(AwaitingSpray[playerid] == 0) return SysMsg(playerid, "Não há nenhuma oferta no momento.");
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- if(MechanicSpray[v][1] == playerid)
- {
- if(Cash[playerid] < MechanicSpray[v][4])
- {
- SysMsg(playerid, "Você não tem dinheiro suficiente para pintar o veiculo, o serviço foi cancelado.");
- GoingToSprayVehicleID[MechanicSpray[v][0]] = 0;
- AwaitingSpray[playerid] = 0;
- MechanicSpray[v][0] = -1;
- MechanicSpray[v][1] = -1;
- MechanicSpray[v][2] = -1;
- MechanicSpray[v][3] = -1;
- MechanicSpray[v][4] = -1;
- MechanicSpray[v][5] = -1;
- break;
- }
- GivePlayerCash(playerid, -MechanicSpray[v][4]);
- GivePlayerCash(MechanicSpray[v][0], MechanicSpray[v][4]);
- ChangeVehicleColorEx(v, MechanicSpray[v][2], MechanicSpray[v][3]);
- UnlockAchievement(MechanicSpray[v][0], 47);
- for(new vi = 1, h = GetVehiclePoolSize(); vi <= h; vi++)
- {
- if(vi == v)
- {
- MySQLUpdateInt(VehicleData[vi][VehSQLID], "Color2", MechanicSpray[v][3], "vehicles");
- MySQLUpdateInt(VehicleData[vi][VehSQLID], "Color1", MechanicSpray[v][2], "vehicles");
- VehicleData[vi][vColor1] = MechanicSpray[v][2];
- VehicleData[vi][vColor2] = MechanicSpray[v][3];
- }
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Pintura aceita - O veiculo foi repintado pelo mecanico %s por $%i.", NameEx(MechanicSpray[v][0]), MechanicSpray[v][4]);
- SendClientMessageF(MechanicSpray[v][0], COLOR_WHITE, "Pinta aceita - Você repintou o veiculo por $%i.", MechanicSpray[v][4]);
- format(gstr, sizeof(gstr),"* O mecanico %s repintou o veiculo %s %s e%s. *", NameEx(MechanicSpray[v][0]), GetVehicleName(v), VehicleColors[MechanicSpray[v][2]], VehicleColors[MechanicSpray[v][3]]);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- GoingToSprayVehicleID[MechanicSpray[v][0]] = 0;
- AwaitingSpray[playerid] = 0;
- MechanicSpray[v][0] = -1;
- MechanicSpray[v][1] = -1;
- MechanicSpray[v][2] = -1;
- MechanicSpray[v][3] = -1;
- MechanicSpray[v][4] = -1;
- MechanicSpray[v][5] = -1;
- break;
- }
- }
- }
- else if(strmatch(option, "cumprimento"))
- {
- if(RequestedToShake[playerid] == -1) return SysMsg(playerid, "Nenhum cumprimento para aceitar no momento.");
- if(!IsPlayerConnected(RequestedToShake[playerid]))
- {
- SysMsg(playerid, "Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: 1-001)");
- RequestedToShake[playerid] = -1;
- return true;
- }
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso em um veiculo.");
- if(GetPlayerVehicleID(RequestedToShake[playerid]) > 0) return SysMsg(playerid,"Você não pode fazer isso com alguém que esteja dentro de um veiculo.");
- new Float:tX, Float:tY, Float:tZ;
- GetPlayerPos(RequestedToShake[playerid], tX, tY, tZ);
- if(!IsPlayerInRangeOfPoint(playerid, 2.0, tX, tY, tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para apertar as mãos.");
- SetPlayerToFacePlayer(playerid, RequestedToShake[playerid]);
- SetPlayerToFacePlayer(RequestedToShake[playerid], playerid);
- OnePlayAnim(playerid, "GANGS", "hndshkfa_swt", 3.5, 0, 0, 0, 0, 0);
- OnePlayAnim(RequestedToShake[playerid], "GANGS", "hndshkfa_swt", 3.5, 0, 0, 0, 0, 0);
- format(gstr, sizeof(gstr),"Cumprimento a %s foi aceito.", NameRP(playerid));
- SendClientMessage(RequestedToShake[playerid],COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Cumprimento a %s foi aceito.", NameRP(RequestedToShake[playerid]));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"* %s cumprimenta %s. *",NameRP(playerid),NameRP(RequestedToShake[playerid]));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(Faction[playerid] == Faction[RequestedToShake[playerid]]) UnlockAchievement(RequestedToShake[playerid], 36);
- if(SQLID[RequestedToShake[playerid]] == 1) UnlockAchievement(playerid, 44);
- if(SQLID[playerid] == 1) UnlockAchievement(RequestedToShake[playerid], 44);
- RequestedToShake[playerid] = -1;
- }
- else if(strmatch(option, "fcumprimento"))//fshark
- {
- if(RequestedToFShake[playerid] == -1) return SysMsg(playerid, "Não há nenhum cumprimento para aceitar.");
- if(!IsPlayerConnected(RequestedToFShake[playerid]))
- {
- SysMsg(playerid, "Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: 1-002)");
- RequestedToShake[playerid] = -1;
- return true;
- }
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso em um veiculo.");
- if(GetPlayerVehicleID(RequestedToFShake[playerid]) > 0) return SysMsg(playerid,"Você não pode fazer isso com alguém que esteja dentro de um veiculo.");
- new Float:tX, Float:tY, Float:tZ;
- GetPlayerPos(RequestedToFShake[playerid], tX, tY, tZ);
- if(!IsPlayerInRangeOfPoint(playerid, 2.0, tX, tY, tZ)) return SysMsg(playerid,"Você precisa esta perto do jogador para cumprimenta-lo.");
- SetPlayerToFacePlayer(playerid, RequestedToFShake[playerid]);
- SetPlayerToFacePlayer(RequestedToFShake[playerid], playerid);
- OnePlayAnim(playerid, "GANGS", "prtial_hndshk_biz_01", 3.5, 0, 0, 0, 0, 0);
- OnePlayAnim(RequestedToFShake[playerid], "GANGS", "prtial_hndshk_biz_01", 3.5, 0, 0, 0, 0, 0);
- format(gstr, sizeof(gstr),"Cumprimento formal com %s foi aceito.", NameRP(playerid));
- SendClientMessage(RequestedToFShake[playerid],COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Cumprimento formal com %s foi aceito.", NameRP(RequestedToFShake[playerid]));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"* %s comprimenta %s. *",NameRP(playerid),NameRP(RequestedToFShake[playerid]));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- if(Faction[playerid] == Faction[RequestedToFShake[playerid]]) UnlockAchievement(RequestedToFShake[playerid], 36);
- if(strcmp("Alec_Rae", GetName(RequestedToFShake[playerid]), false) == 0) UnlockAchievement(playerid, 44);
- if(strcmp("Alec_Rae", GetName(playerid), false) == 0) UnlockAchievement(RequestedToFShake[playerid], 44);
- RequestedToFShake[playerid] = -1;
- }
- else if(strmatch(option, "beijo"))
- {
- if(RequestedToKiss[playerid] == -1) return SysMsg(playerid, "Ninguem te pediu um beijo.");
- if(!IsPlayerConnected(RequestedToKiss[playerid]))
- {
- SysMsg(playerid, "Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: 1-003)");
- RequestedToKiss[playerid] = -1;
- return true;
- }
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso em um veiculo.");
- if(GetPlayerVehicleID(RequestedToKiss[playerid]) > 0) return SysMsg(playerid,"Você não pode fazer isso com alguém que esteja dentro de um veiculo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(RequestedToKiss[playerid],tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.0,tX,tY,tZ)) return SysMsg(playerid,"Você precisa está próximo do jogador para beija-lo.");
- SetPlayerToFacePlayer(playerid, RequestedToKiss[playerid]);
- SetPlayerToFacePlayer(RequestedToKiss[playerid], playerid);
- OnePlayAnim(playerid, "KISSING", "Playa_Kiss_02", 3.5, 0, 0, 0, 0, 0);
- OnePlayAnim(RequestedToKiss[playerid], "KISSING", "Grlfrd_Kiss_02", 3.5, 0, 0, 0, 0, 0);
- format(gstr, sizeof(gstr),"O pedido de beijar %s foi aceita.", NameRP(playerid));
- SendClientMessage(RequestedToKiss[playerid],COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"O pedido de beijar %s foi aceita.", NameRP(RequestedToKiss[playerid]));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"* %s beija %s. *",NameRP(playerid),NameRP(RequestedToKiss[playerid]));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- RequestedToKiss[playerid] = -1;
- }
- else if(strmatch(option, "vchavecompartilha"))//sharedkey //vchavecompartilha
- {
- if(VehicleShareOffer[playerid][0] == -1) return SysMsg(playerid, "Nenhum pedido de compartilhamento de veiculos para aceitar.");
- format(gstr, sizeof(gstr),"Veiculo compartilhado com %s foi aceito.", NameRP(playerid));
- SendClientMessage(VehicleShareOffer[playerid][0],COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"Veiculo compartilhado com %s foi aceito. Agora você pode usar seu veículo por %i minutos.", NameRP(VehicleShareOffer[playerid][0]), VehicleShareOffer[playerid][2]);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- SendClientMessage(playerid, COLOR_WHITE, "Você pode remover essa chave compartilhada a qualquer momento usando /removerchaves.");
- VehicleBorrowKey[playerid] = VehicleData[VehicleShareOffer[playerid][1]][VehSQLID];
- VehicleBorrowKeyTime[playerid] = VehicleShareOffer[playerid][2];
- MySQLUpdateInt(SQLID[playerid], "BorrowKey", VehicleBorrowKey[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "BorrowKeyTime", VehicleBorrowKeyTime[playerid], "players");
- VehicleShareOffer[playerid][0] = -1;
- VehicleShareOffer[playerid][1] = 0;
- VehicleShareOffer[playerid][2] = 0;
- }
- else if(strmatch(option, "revista"))
- {
- if(RequestedToFrisk[playerid] == -1) return SysMsg(playerid, "Não há nenhuma pedido de revista para aceitar.");
- if(!IsPlayerConnected(RequestedToFrisk[playerid]))
- {
- SysMsg(playerid, "Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: 1-004)");
- RequestedToFrisk[playerid] = -1;
- return true;
- }
- new playa = -1;
- foreach(new i: Player)
- {
- if(RequestedToFrisk[playerid] == i)
- {
- playa = i;
- break;
- }
- }
- if(GetPlayerVehicleID(playerid) > 0) return SysMsg(playerid,"Você não pode fazer isso em um veículo.");
- if(GetPlayerVehicleID(playa) > 0) return SysMsg(playerid,"Você não pode fazer isso com a pessoa em um veiculo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playerid,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para revistar-los.");
- format(gstr, sizeof(gstr),"* %s começa a revistar %s. *", NameRP(playa), NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s revistou você.", NameRP(playa));
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- new wCount = 0;
- format(gstr, sizeof(gstr), "[Armas] ");
- for(new i = 0; i < MAX_TOTAL_WEAPONS; i++)
- {
- if(WeaponData[playerid][i][Weapon] > 0)
- {
- if(wCount != 0) strcat(gstr, ", ");
- strcat(gstr, GetWeaponNameFromID(WeaponData[playerid][i][Weapon]));
- wCount ++;
- }
- }
- if(wCount == 0) strcat(gstr, "None.");
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "[Diversos] Dinheiro: $%s", format_cash(Cash[playerid]));
- if(Inventory[playerid][Briefcase] == 1) strcat(gstr, ", Briefcase");
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "[Drogas] Marijuana: %ig, Cocaina: %ig, Moonshine: %iL", Inventory[playerid][Weed], Inventory[playerid][Cocaine], Inventory[playerid][MoonShine]);
- SendClientMessage(playa, COLOR_WHITE, gstr);
- RequestedToFrisk[playerid] = -1;
- }
- else if(strmatch(option, "mudança") || strmatch(option, "mudanca"))
- {
- if(OfferedMoveinFrom[playerid][0] == -1) return SysMsg(playerid, "Sem 'mudança' para aceitar agora.");
- new playa = OfferedMoveinFrom[playerid][0], hid = OfferedMoveinFrom[playerid][1];
- OfferedMoveinFrom[playerid][0] = -1;
- OfferedMoveinFrom[playerid][1] = -1;
- if(!IsPlayerConnected(playa)) return SysMsg(playerid, "Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: 1-005)");
- new ghouse = HasHouseKey[playa][hid];
- if(ghouse <= 0) return SysMsg(playerid, "Oops! Ocorreu um erro de sistema, por favor relate a um admin. (ERROR: 1-005-1)");
- MySpawnID[playerid] = 5;
- GuestHouseID[playerid] = HouseData[ghouse][HouseSQLID];
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET GuestHouseID = %i, MySpawnID = %i WHERE id = %i", HouseData[ghouse][HouseSQLID], MySpawnID[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playa, COLOR_WHITE, "%s acaba de se mudar para sua casa.", NameEx(playerid));
- SendClientMessageF(playerid,COLOR_GOLD, "Você se mudou para casa de %s. Seu ponto de spawn foi automaticamente definido para esta casa.", HouseData[ghouse][HouseDescription], NameEx(playa));
- }
- else if(strmatch(option, "taxi"))
- {
- new vehid = GetPlayerVehicleID(playerid);
- foreach(new i: Player)
- {
- if(vehid == GetPlayerVehicleID(i) && TaxiForceFare[i] == playerid)
- {
- TaxiForceFare[i] = -1;
- TaxiFareID[i] = playerid;
- TaxiMeter[i] = 0;
- TaxiFare[playerid] = 1;
- format(gstr, sizeof(gstr),"Você aceitou a viagem de %s. Onde gostaria de ir?", NameEx(i));
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- format(gstr, sizeof(gstr),"%s confirmou a tarifa de táxi. Ele(a) agora é(são) cliente, você pode iniciar o taxímetro se necessário.", NameEx(playerid));
- SendClientMessage(i,COLOR_WHITE,gstr);
- return true;
- }
- }
- SysMsg(playerid, "Nenhum táxi para aceitar agora.");
- }
- else if(strmatch(option, "olhosvendados")) //olhosvendados
- {
- if(RequestedToBlindfold[playerid] == -1) return SysMsg(playerid, "Você não possui solicitações pendentes para venda de olhos.");
- if(!IsPlayerConnected(RequestedToBlindfold[playerid]))
- {
- SysMsg(playerid, "Oops! Ocorreu um erro no sistema, informe para um administrador. (ERROR: 1-004)");
- RequestedToBlindfold[playerid] = -1;
- return true;
- }
- new playa = -1;
- foreach(new i: Player)
- {
- if(RequestedToBlindfold[playerid] == i)
- {
- playa = i;
- break;
- }
- }
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playerid,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playa,2.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para aceitar uma venda de olhos dele.");
- PlayerTextDrawShow(playerid, BlindfoldEffect[playerid]);
- GangZoneShowForPlayer(playerid, BlindZone, COLOR_BLACK);
- format(gstr, sizeof(gstr),"* %s pega uma faixa de pano, enrola em torno da cabeça de %s vendando seus olhos. *", NameRP(playa), NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s vendou seus olhos.", NameRP(playa));
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- RequestedToBlindfold[playerid] = -1;
- Blindfolded[playerid] = 1;
- Inventory[playa][Blindfold] = 0;
- MySQLUpdateInt(SQLID[playerid], "HasBlindfold", Inventory[playa][Blindfold], "players");
- }
- else if(strmatch(option, "cura"))
- {
- if(BeingHealed[playerid] == 0) return SysMsg(playerid, "Você não tem nenhum pedido de cura.");
- new playa = HealedBy[playerid];
- Injuries[playerid][HealID[playerid]][pWeaponID] = 0;
- Injuries[playerid][HealID[playerid]][pBodypart] = 0;
- DeathTimer[playerid] += 30;
- format(gstr, sizeof(gstr),"* %s cura uma ferida em %s. *", NameRP(playa), NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"%s curou uma de suas feridas.", NameRP(playa));
- SendClientMessage(playerid, COLOR_ORANGE, gstr);
- Healing[playa] = -1;
- BeingHealed[playerid] = 0;
- HealID[playerid] = -1;
- HealedBy[playerid] = -1;
- HitCount[playerid] --;
- return true;
- }
- else if(strmatch(option, "morte"))
- {
- if(!Dead{playerid}) return SysMsg(playerid, "Você não está em uma condição crítica para aceitar morte.");
- if(DeathTimer[playerid] != 0) return SysMsg(playerid, "Você não pode aceitar a morte ainda.");
- if(IsPlayerInAnyVehicle(playerid))
- {
- RemovePlayerFromVehicle(playerid);
- SetPlayerPos(playerid, PlayerPosX(playerid), PlayerPosY(playerid), PlayerPosZ(playerid) + 2);
- }
- HasJustDied[playerid] = 2;
- Dead{playerid} = false;
- DeathTimer[playerid] = 0;
- CreateCorpse(playerid);
- SendPlayerToHospital(playerid);
- ClearInjuriesForPlayer(playerid);
- format(sgstr, sizeof(sgstr), "[Admin] %s aceitou a sua morte. ((/aceitar morte))", NameEx(playerid));
- AdminBroadcast(sgstr, 1);
- format(sgstr, sizeof(sgstr), "[Death - System] %s aceitou morte. ((/aceitar morte))", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_FADE3, COLOR_FADE3, COLOR_FADE3, COLOR_FADE3, COLOR_FADE3);
- return true;
- }
- return true;
- }
- CMD:jn(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new vehicleid = GetPlayerVehicleID(playerid);
- if(vehicleid == 0) return SysMsg(playerid, "Você deve estar em um veículo para controlar as janelas.");
- if(!VehicleHasWindows(vehicleid)) return SysMsg(playerid,"Este veículo não tem janelas para controlar.");
- if(Locked{vehicleid} && IsOwnedCar(vehicleid) && SQLID[playerid] != VehicleData[vehicleid][VehicleOwnerSQLID]) return SysMsg(playerid, "Você deve abrir o veiculo.");
- new status[12];
- if(sscanf(params, "s[12]", status)) return SysMsg(playerid, "Use: /jn (/janelas) [abaixar/abrir Ou Levantar/Fechar]");
- if(strcmp("abaixar", status, true) == 0 || strcmp("abrir", status, true) == 0)
- {
- if(WindowState{vehicleid} == WINDOWS_OPEN) return SysMsg(playerid, "As janelas já estão abertas.");
- WindowState{vehicleid} = WINDOWS_OPEN;
- SetVehicleParamsCarWindows(vehicleid, 0, 0, 0, 0);
- format(gstr, sizeof(gstr),"* %s abaixa as janelas do %s. *",NameRP(playerid),GetVehicleName(vehicleid));
- ProxDetector(20.0, playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- if(strcmp("levantar", status, true) == 0 || strcmp("fechar", status, true) == 0)
- {
- if(WindowState{vehicleid} == WINDOWS_CLOSED) return SysMsg(playerid, "As janelas do veiculo já estão fechadas.");
- WindowState{vehicleid} = WINDOWS_CLOSED;
- SetVehicleParamsCarWindows(vehicleid, 1, 1, 1, 1);
- format(gstr, sizeof(gstr),"* %s fecha todas as janelas do %s. *",NameRP(playerid),GetVehicleName(vehicleid));
- ProxDetector(20.0, playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else SysMsg(playerid, "Use: /jn (/janelas) [abaixar/abrir Ou Levantar/Fechar]");
- return true;
- }
- CMD:janelas(playerid, params[]) return cmd_jn(playerid, params);
- CMD:tow(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new vehicleid = GetPlayerVehicleID(playerid);
- if(!IsTowingVehicle(vehicleid)) return SysMsg(playerid,"You must be in a vehicle that can tow.");
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"You must be the driver.");
- if(IsTrailerAttachedToVehicle(vehicleid)) return SysMsg(playerid,"You are already towing a vehicle use /detach primeiro.");
- new Float:pX,Float:pY,Float:pZ;
- new Float:vX,Float:vY,Float:vZ;
- GetPlayerPos(playerid,pX,pY,pZ);
- new Found = 0;
- new vid = 1;
- new x = GetVehiclePoolSize();
- while(vid <= x && Found == 0)
- {
- vid++;
- GetVehiclePos(vid,vX,vY,vZ);
- if(floatabs(pX-vX) < 7.0 && floatabs(pY-vY) < 7.0 && floatabs(pZ-vZ) < 7.0 && vid != vehicleid)
- {
- Found = 1;
- AttachTrailerToVehicle(vid, vehicleid);
- }
- }
- if(!Found) SendClientMessage(playerid,COLOR_SKYBLUE,"Você não está perto de nenhum veículo. Assegure-se de que está perto da parte traseira de um veículo, se quiser rebocá-lo.");
- return true;
- }
- CMD:detach(playerid, params[])//observar
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SysMsg(playerid,"Você precisa estar em um veiculo.");
- new vehicleid = GetPlayerVehicleID(playerid);
- if(vehicleid == 0) return SysMsg(playerid, "Você não estar em um veiculo.");
- new trailerid = GetVehicleTrailer(vehicleid);
- if(trailerid == 0) return SysMsg(playerid, "Você não tem um Trailer.");
- DetachTrailerFromVehicle(vehicleid);
- SendClientMessage(playerid,COLOR_SKYBLUE,"Trailer Detached");
- return true;
- }
- CMD:pm(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(PMSpamTime[playerid] > 0) return SysMsg(playerid,"Por favor, aguarde antes de mandar outra mensagem.");
- new playa = -1, msg[152];
- if(sscanf(params, "us[152]", playa, msg)) return SysMsg(playerid,"Use: /pm [ID ou nome do jogador] [mensagem] *Mensagens pessoais são totalmente OOC*");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode fazer um PM você mesmo.");
- if(!AcceptPM{playa} && !IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid,"Esse jogador tem mensagens privadas desligadas.");
- if(IsPlayerIgnoringPlayer(playerid, playa)) return SysMsg(playerid,"Você não pode enviar uma mensagem a alguém que está ignorando.");
- if(IsPlayerIgnoringPlayer(playa, playerid)) return SysMsg(playerid,"As PM's desse jogador está desativada.");
- if(!Logged{playa}) return SysMsg(playerid,"Você só pode enviar mensagens para jogadores conectados.");
- if(!IsPlayerIgnoringPlayer(playa, playerid) || IsPlayerAdminLevelOK(playa, 1)) SendSplitMessageF(playa,COLOR_PM,"[PM from %s, ID %i] %s", NameEx(playerid), playerid, msg);
- SendSplitMessageF(playerid,COLOR_PM, "[PM to %s, ID %i] %s", NameEx(playa), playa, msg);
- if(!IsPlayerAdminLevelOK(playerid, 1)) PMSpamTime[playerid] = 3;
- PMReplyID[playa] = playerid;
- if(!AcceptPM{playerid}) SysMsg(playerid,"Nota: Você atualmente suas PM's estão desativadas, você não receberá resposta de ninguem.");
- if(IsAFK{playa}) SysMsg(playerid,"Nota: O jogador que você está enviando PM está AFK, Talvez você não receberá uma resposta (Imediatamente).");
- return true;
- }
- CMD:rpm(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(PMReplyID[playerid] == -1) return SysMsg(playerid, "Você não tem nenhuma PM para responder.");
- if(isnull(params)) return SysMsg(playerid, "Use: /rpm [mensagem] *Envia um PM rápido para o último jogador que enviou PM para você.*");
- new playa = PMReplyID[playerid];
- format(sgstr, sizeof(sgstr), "%i %s", playa, params);
- cmd_pm(playerid, sgstr);
- return true;
- }
- CMD:pmignorados(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(IsDonator[playerid] < 3) return SysMsg(playerid,"Somente o Nível 3 do doador e acima podem usar esse recurso.");
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /pmignorados [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode fazer isso com você mesmo!");
- if(IsPlayerAdminLevelOK(playa, 1)) return SysMsg(playerid,"Você receberá PM's de Administradores, mesmo que você os ignore.");
- if(IsPlayerIgnoringPlayer(playerid, playa)) SendClientMessageF(playerid,COLOR_WHITE, "Você está realmente ignorando os PM de %s.", NameEx(playa));
- else SendClientMessageF(playerid,COLOR_WHITE, "Você está ingnorando as PM's de %s.", NameEx(playa));
- return true;
- }
- CMD:togpm(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(isnull(params)) return SysMsg(playerid,"Use: /togpm ['on' ou 'off' ou ID]");
- if(strcmp("off", params, true) == 0)
- {
- if(!AcceptPM{playerid}) return SysMsg(playerid,"Suas PM's já estão desativadas.");
- AcceptPM{playerid} = false;
- SendClientMessage(playerid, COLOR_WHITE, "Mensagens pessoais desativadas, outros jogadores não podem enviar PM para você.");
- return true;
- }
- else if(strcmp("on", params, true) == 0)
- {
- if(AcceptPM{playerid}) return SysMsg(playerid,"Suas PM's já estão ativadas.");
- AcceptPM{playerid} = true;
- SendClientMessage(playerid, COLOR_WHITE, "Mensagens pessoais ativadas, outros jogadores podem enviar PM para você.");
- return true;
- }
- else if(IsNumeric(params) || IsPlayerConnected(GetPlayerIDs(params)))
- {
- new playa = GetPlayerIDs(params);
- if(playa == playerid) return SysMsg(playerid,"Você não pode se ignorar!");
- if(IsPlayerAdminLevelOK(playa, 1)) return SysMsg(playerid,"Você não pode ignorar Administradores.");
- if(!IsPlayerIgnoringPlayer(playerid, playa))
- {
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO `ignore` (PlayerSQLID,IgnoringSQLID) VALUES (%i,%i)", SQLID[playerid], SQLID[playa]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_DONATE, "Você está ignorando os PM's de %s.", NameEx(playa));
- return true;
- }
- else if(IsPlayerIgnoringPlayer(playerid, playa))
- {
- mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM `ignore` WHERE PlayerSQLID=%i AND IgnoringSQLID=%i", SQLID[playerid], SQLID[playa]);
- mysql_pquery(conn, mquery);
- SendClientMessageF(playerid, COLOR_DONATE, "Você não está mais ignorando os PM's de %s.", NameEx(playa));
- return true;
- }
- }
- SysMsg(playerid,"Use: /togpm ['on' ou 'off' ou ID]");
- return true;
- }
- CMD:toggold(playerid)
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(IsDonator[playerid] < 2) return SysMsg(playerid,"Somente os donadores de nível 2+ podem usar esse recurso.");
- if(GoldToggle[playerid] == 0)
- {
- if(ADuty[playerid] == 1) return SysMsg(playerid, "Você está admin Duty.");
- GoldToggle[playerid] = 1;
- SetPlayerColor(playerid, COLOR_DONATE);
- SendClientMessage(playerid, COLOR_WHITE, "Donator Mensagem: Seu golden OOC e nome agora estão ligados.");
- }
- else
- {
- GoldToggle[playerid] = 0;
- SetPlayerColor(playerid, 0xFFFFFF00);
- SendClientMessage(playerid, COLOR_WHITE, "Donator Mensagem: Seu golden OOC e nome agora estão desligados.");
- }
- return true;
- }
- CMD:togooc(playerid)
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(IsDonator[playerid] < 2) return SysMsg(playerid,"Somente os donadores de nível 2+ podem usar esse recurso.");
- if(OOCToggle[playerid] == 0)
- {
- OOCToggle[playerid] = 1;
- SendClientMessage(playerid, COLOR_WHITE, "Donator Mensagem: O canal de bate-papo OOC agora está desativado para você.");
- }
- else
- {
- OOCToggle[playerid] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Donator Mensagem: O canal de bate-papo OOC agora está habilitado para você.");
- }
- return true;
- }
- CMD:togdooc(playerid)
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(IsDonator[playerid] < 1) return SysMsg(playerid,"Somente os Donadores podem usar esse recurso.");
- ToggleDOOC{playerid} = !ToggleDOOC{playerid};
- SendClientMessage(playerid, COLOR_WHITE, (ToggleDOOC{playerid}) ? ("Donator Mensagem: O canal de bate-papo Donator OOC agora está desativado para você.") : ("Donator Mensagem: O canal de bate-papo Donator OOC não está habilitado para você."));
- return true;
- }
- CMD:gtoghc(playerid)
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerAdminLevelOK(playerid, 4)) return SysMsg(playerid, AUTHMSG);
- GlobalHelperChatTog = !GlobalHelperChatTog;
- foreach(new i: Player)
- {
- if(IsHelper{i} || AdminLevel[i] != 0)
- {
- if(GlobalHelperChatTog) SendClientMessage(i, COLOR_LIGHTGREEN, "O Chat Helper foi desativado.");
- else SendClientMessage(i, COLOR_LIGHTGREEN, "O Helper Chat foi ativado.");
- }
- }
- return true;
- }
- CMD:animegrito(playerid)//Habilitar e desabilitar a animação de grito /animegrito
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- ShoutAnimToggle{playerid} = !ShoutAnimToggle{playerid};
- if(ShoutAnimToggle{playerid}) SendClientMessage(playerid, COLOR_WHITE, "A animação de grito (/g) agora está ativado para você.");
- else SendClientMessage(playerid, COLOR_WHITE, "A animação de grito (/g) agora está desativado para você.");
- MySQLUpdateInt(SQLID[playerid], "ShoutAnimToggle", ShoutAnimToggle{playerid}, "players");
- return true;
- }
- CMD:toganimfalar(playerid)//toganimfalar
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- TalkAnimToggle{playerid} = !TalkAnimToggle{playerid};
- if(TalkAnimToggle{playerid}) SendClientMessage(playerid, COLOR_WHITE, "A animação de conversa agora está habilitada para você.");
- else SendClientMessage(playerid, COLOR_WHITE, "A animação de conversa agora está desabilitada para você.");
- MySQLUpdateInt(SQLID[playerid], "TalkAnimToggle", TalkAnimToggle{playerid}, "players");
- return true;
- }
- CMD:tognews(playerid)
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- NewsToggle{playerid} = !NewsToggle{playerid};
- if(NewsToggle{playerid}) SendClientMessage(playerid, COLOR_WHITE, "As transmissões de notícias agora estão desativadas para você.");
- else SendClientMessage(playerid, COLOR_WHITE, "As transmissões de notícias agora estão desativadas para você.");
- return true;
- }
- CMD:toganuncios(playerid)//toganuncios
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- AdvertsToggle{playerid} = !AdvertsToggle{playerid};
- if(AdvertsToggle{playerid}) SendClientMessage(playerid, COLOR_WHITE, "Os anúncios agora estão desativados para você.");
- else SendClientMessage(playerid, COLOR_WHITE, "Os anúncios agora estão ativados para você.");
- return true;
- }
- CMD:togaudiostreams(playerid)
- {
- if(!Logged{playerid}) return true;
- AudioToggle{playerid} = !AudioToggle{playerid};
- if(AudioToggle{playerid})
- {
- StopAudioStreamForPlayer(playerid);
- SendClientMessage(playerid, COLOR_WHITE, "Certos audio streams agora estão desabilitados para você.");
- }
- else SendClientMessage(playerid, COLOR_WHITE, "Certos audio streams agora estão habilitados para você.");
- return true;
- }
- CMD:togdicas(playerid)//togdicas
- {
- if(!Logged{playerid}) return true;
- HintToggle{playerid} = !HintToggle{playerid};
- if(HintToggle{playerid}) SendClientMessage(playerid, COLOR_WHITE, "As mensagens de dica agora estão desabilitadas para você.");
- else SendClientMessage(playerid, COLOR_WHITE, "As mensagens de dica agora estão habilitadas para você.");
- return true;
- }
- CMD:notepad(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][Notepad] == 0) return SysMsg(playerid,"You don't have a Notepad to use.");
- new action[10], page, text[75];
- if(sscanf(params, "s[10]I(0)S()[75]", action, page, text)) return SysMsg(playerid,"Use: /notepad [Escrever / ler / limpar / editar / mostrar] [Número da Página] [texto (se escrever)]");
- if(strcmp("limpar", action, false) == 0)
- {
- if(page == 0) return SysMsg(playerid,"Use: /notepad limpar [Número da Página]");
- if(page < 1 || page > 5) return SysMsg(playerid,"Número de página inválido. Use de 1 à 5.");
- if(strcmp("blank", NotepadText[playerid][page-1], true) == 0) return SysMsg(playerid,"Essa página já está em branco.");
- NotepadText[playerid][page-1] = "blank";
- new str[10];
- for(new x = 0; x < 5; x++)
- {
- format(str, sizeof(str), "Notepad%i", x + 1);
- MySQLUpdateString(SQLID[playerid], str, NotepadText[playerid][x], "players");
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Você limpou a página %i do bloco de notas.", page);
- return true;
- }
- else if(strcmp("ler", action, false) == 0)
- {
- if(page == 0) return SysMsg(playerid,"Use: /notepad ler [Número da Página]");
- if(page < 1 || page > 5) return SysMsg(playerid,"Número de página inválido. Use de 1 à 5.");
- if(strcmp("blank", NotepadText[playerid][page-1], true) == 0) return SysMsg(playerid,"That page is blank.");
- format(sgstr,sizeof(sgstr),"* %s gets a notepad out and reads one of the pages. *",NameRP(playerid));
- ProxDetector(15.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid, COLOR_WHITE, "[Notepad: Page %i] %s", page, NotepadText[playerid][page-1]);
- return true;
- }
- else if(strcmp("escrever", action, false) == 0)
- {
- if(Inventory[playerid][Pen] == 0) return SysMsg(playerid,"Você não tem uma caneta para escrever.");
- if(page == 0) return SysMsg(playerid,"Use: /notepad Write [Número da Página] [text]");
- if(page < 1 || page > 5) return SysMsg(playerid,"Número de página inválido. Use de 1 à 5.");
- if(strcmp("blank", NotepadText[playerid][page-1], true) != 0) return SysMsg(playerid,"Esta página já tem texto sobre ele. Por favor, limpe esta página para usá-lo.");
- if(isnull(text)) return SysMsg(playerid,"Use: /notepad Escrever [Número da Página] [texto]");
- if(strlen(text) > 73) return SysMsg(playerid,"A mensagem esta muito longa para caber na página.");
- format(NotepadText[playerid][page-1], 75, text);
- new str[10];
- for(new x = 0; x < 5; x++)
- {
- format(str, sizeof(str), "Notepad%i", x + 1);
- MySQLUpdateString(SQLID[playerid], str, NotepadText[playerid][x], "players");
- }
- format(sgstr,sizeof(sgstr),"* %s pega um bloco de notas e escreve em uma das páginas. *",NameRP(playerid));
- ProxDetector(15.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid, COLOR_WHITE, "[Notepad: Página %i: Escreva] %s", page, NotepadText[playerid][page-1]);
- Inventory[playerid][Pen] --;
- MySQLUpdateInt(SQLID[playerid], "HasPen", Inventory[playerid][Pen], "players");
- if(Inventory[playerid][Pen] <= 0)
- {
- Inventory[playerid][Pen] = 0;
- format(sgstr,sizeof(sgstr),"* A caneta de %s ficou sem tinta. *",NameRP(playerid));
- ProxDetector(15.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "> Sua caneta não tem tinta, jogue fora e compre outra.");
- }
- return true;
- }
- else if(strcmp("editar", action, false) == 0)
- {
- if(page == 0) return SysMsg(playerid,"Use: /notepad Editar [Número da Página] [texto] - adiciona texto ao final da mensagem atual");
- if(page < 1 || page > 5) return SysMsg(playerid,"Número de página inválido. Use de 1 à 5.");
- if(strcmp("blank", NotepadText[playerid][page-1], true) == 0) return SysMsg(playerid,"Essa página está em branco. Você deve 'escrever' uma página em branco antes de editar.");
- if(isnull(text)) return SysMsg(playerid,"Use: /notepad Editar [Número da Página] [texto] - adiciona texto ao final da mensagem atual");
- if(strlen(text) + strlen(NotepadText[playerid][page-1]) > 73) return SysMsg(playerid,"A mensagem e a edição foram muito longas para caber na página.");
- format(NotepadText[playerid][page-1], 75, "%s %s", NotepadText[playerid][page-1], text);
- new str[10];
- for(new x = 0; x < 5; x++)
- {
- format(str, sizeof(str), "Notepad%i", x + 1);
- MySQLUpdateString(SQLID[playerid], str, NotepadText[playerid][x], "players");
- }
- format(sgstr,sizeof(sgstr),"*%s pega um bloco de notas e escreve em uma das páginas. *",NameRP(playerid));
- ProxDetector(15.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid, COLOR_WHITE, "[Notepad: Página %i: Editar] %s", page, NotepadText[playerid][page-1]);
- return true;
- }
- else if(strcmp("mostrar", action, false) == 0)
- {
- new Float:tX, Float:tY, Float:tZ;
- if(page == 0 || isnull(text)) return SysMsg(playerid,"Use: /notepad Mostrar [Número da Página] [player id/nome]");
- if(page < 1 || page > 5) return SysMsg(playerid,"Número de página inválido. Use de 1 à 5.");
- if(strcmp("blank", NotepadText[playerid][page-1], true) == 0) return SysMsg(playerid,"Essa página está em branco, você precisa escrever algo antes de mostrar.");
- new playa;
- if(!IsNumeric(text)) playa = GetPlayerID(playerid, text); else playa = strval(text);
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- GetPlayerPos(playa, tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para mostrar a nota.");
- format(sgstr,sizeof(sgstr),"*%s pega um bloco de notas e mostra uma das páginas para %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(15.0,playerid,sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playa, COLOR_WHITE, "[Página] %s", NotepadText[playerid][page-1]);
- return true;
- }
- return true;
- }
- CMD:calc(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][Calculator] == 0) return SysMsg(playerid,"Você não tem uma calculadora para usar.");
- new Float:n1, Float:n2, oper, Float:answer;
- if(sscanf(params, "fcf", n1, oper, n2)) return SysMsg(playerid,"Use: /calc [Primeiro número] [+(add) OU -(Subtrair) OR *(Multiplicar) OU /(Dividir)] [Segundo número]");
- format(gstr, sizeof(gstr), "*%s pega sua calculadora e pressiona alguns botões. *", NameRP(playerid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- switch(oper)
- {
- case '+': answer = n1 + n2;
- case '-': answer = n1 - n2;
- case '/':
- {
- if(n2 == 0) return SysMsg(playerid, "[CALCULADORA] ERROR: Não é possível dividir por zero");
- answer = n1 / n2;
- }
- case '*': answer = n1 * n2;
- default: return SysMsg(playerid, "[CALCULADORA] ERROR: Operador inválido");
- }
- SendClientMessageF(playerid, COLOR_WHITE, "[CALCULADORA] %.2f %c %.2f = %.2f", n1, oper, n2, answer);
- return true;
- }
- CMD:jogardado(playerid, params[])//rolldice
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][Dice] == 0) return SysMsg(playerid,"Você não tem um dado, compre em uma Loja geral.");
- format(gstr, sizeof(gstr),"* %s joga um dado para cima a media altura e ele cai marcando %i. *", NameRP(playerid), random(6)+1);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:flipcoin(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Cash[playerid] <= 0) return SysMsg(playerid,"Você não tem moedas.");
- new Side[7], Rand = random(2);
- if(Rand == 0) Side = "Cara";
- if(Rand == 1) Side = "Coroa";
- format(gstr, sizeof(gstr),"* %s joga uma moeda para cima a media altura e ela cai no chão marcando %s. *",NameRP(playerid),Side);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:fumar(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][Lighter] <= 0) return SysMsg(playerid,"Você precisa de um isqueiro para fumar um cigarro.");
- if(Inventory[playerid][Fags] <= 0) return SysMsg(playerid,"Não sobrou mais cigarros.");
- Inventory[playerid][Fags] -= 1;
- Inventory[playerid][Lighter] -= 1;
- MySQLUpdateInt(SQLID[playerid], "HasFags", Inventory[playerid][Fags], "players");
- MySQLUpdateInt(SQLID[playerid], "HasLighter", Inventory[playerid][Lighter], "players");
- if(Inventory[playerid][Lighter] <= 0)
- {
- SysMsg(playerid,"Seu isqueiro esta sem gás, jogue fora.");
- Inventory[playerid][Lighter] = 0;
- }
- if(Inventory[playerid][Fags] <= 0)
- {
- SysMsg(playerid,"O maço de cigarro esta vazio, jogue o pacote fora.");
- Inventory[playerid][Fags] = 0;
- }
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_SMOKE_CIGGY);
- format(gstr, sizeof(gstr),"* %s tira um palito de cigarro da carteira e o acende... *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:usarmuni(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(isnull(params)) return SysMsg(playerid,"Use: /usarmuni [Tipo de munição] - Tipos: 'Pistola', 'Shotgun', 'Rifle', 'Assault', 'SMG' *Você deve estar segurando a arma que deseja adicionar munição*");
- new weapid = GetPlayerWeapon(playerid), weapslot = -1;
- if(strcmp("pistola", params, true) == 0)
- {
- if(Inventory[playerid][AmmoBox][AMMOBOX_PISTOL] > 0)
- {
- if(weapid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(weapid < 1 || weapid > 47) return SysMsg(playerid,"Arma inválida.");
- if(weapid == 19 || weapid == 20 || weapid == 21) return SysMsg(playerid,"Arma inválida.");
- weapslot = GetWeaponSlot(weapid);
- if(weapslot != 2) return SysMsg(playerid,"Essa arma não pode levar munição de pistola.");
- if(WeaponData[playerid][weapslot][Weapon] != weapid) return SysMsg(playerid,"Você não possui essa arma.");
- if(WeaponData[playerid][weapslot][WeaponAmmo] == GetDefaultWeaponAmmo(weapid)) return SysMsg(playerid, "Essa arma já esta carregada com o máximo de munições suportada.");
- Inventory[playerid][AmmoBox][AMMOBOX_PISTOL] --;
- MySQLUpdateInt(SQLID[playerid], "AmmoBoxPistol", Inventory[playerid][AmmoBox][AMMOBOX_PISTOL], "players");
- WeaponData[playerid][weapslot][WeaponAmmo] = GetDefaultWeaponAmmo(weapid);
- SyncPlayerWeapons(playerid);
- format(gstr, sizeof(gstr), "* %s retira algumas munições de uma pequena caixa e coloca na sua %s. *", NameRP(playerid), GetWeaponNameFromID(weapid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr), "Você recarregou sua %s.", GetWeaponNameFromID(weapid));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- SetPlayerArmedWeapon(playerid, weapid);
- return true;
- }
- else return SysMsg(playerid, "Você não tem nenhuma caixa de munições para Pistola.");
- }
- else if(strcmp("shotgun", params, true) == 0)
- {
- if(Inventory[playerid][AmmoBox][AMMOBOX_SHOTGUN] > 0)
- {
- if(weapid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(weapid < 1 || weapid > 47) return SysMsg(playerid,"Arma inválida.");
- if(weapid == 19 || weapid == 20 || weapid == 21) return SysMsg(playerid,"Arma inválida.");
- weapslot = GetWeaponSlot(weapid);
- if(weapslot != 3) return SysMsg(playerid,"Essa arma não pode levar munição de Shotgun.");
- if(WeaponData[playerid][weapslot][Weapon] != weapid) return SysMsg(playerid,"Você não possui essa arma.");
- if(WeaponData[playerid][weapslot][WeaponAmmo] == GetDefaultWeaponAmmo(weapid)) return SysMsg(playerid, "Essa arma já esta carregada com o máximo de munições suportada.");
- Inventory[playerid][AmmoBox][AMMOBOX_SHOTGUN] --;
- MySQLUpdateInt(SQLID[playerid], "AmmoBoxShotgun", Inventory[playerid][AmmoBox][AMMOBOX_SHOTGUN], "players");
- WeaponData[playerid][weapslot][WeaponAmmo] = GetDefaultWeaponAmmo(weapid);
- SyncPlayerWeapons(playerid);
- format(gstr, sizeof(gstr), "* %s retira algumas munições de uma pequena caixa e coloca na sua %s. *", NameRP(playerid), GetWeaponNameFromID(weapid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr), "Você recarregou sua %s.", GetWeaponNameFromID(weapid));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- SetPlayerArmedWeapon(playerid, weapid);
- return true;
- }
- else return SysMsg(playerid, "Você não tem nenhuma caixa de munição para Shotgun");
- }
- else if(strcmp("SMG", params, true) == 0)
- {
- if(Inventory[playerid][AmmoBox][AMMOBOX_SMG] > 0)
- {
- if(weapid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(weapid < 1 || weapid > 47) return SysMsg(playerid,"Arma inválida.");
- if(weapid == 19 || weapid == 20 || weapid == 21) return SysMsg(playerid,"Arma inválida.");
- weapslot = GetWeaponSlot(weapid);
- if(weapslot != 4) return SysMsg(playerid,"Essa arma não pode levar munição SMG.");
- if(WeaponData[playerid][weapslot][Weapon] != weapid) return SysMsg(playerid,"Você não possui essa arma.");
- if(WeaponData[playerid][weapslot][WeaponAmmo] == GetDefaultWeaponAmmo(weapid)) return SysMsg(playerid, "Essa arma já esta carregada com o máximo de munições suportada.");
- Inventory[playerid][AmmoBox][AMMOBOX_SMG] --;
- MySQLUpdateInt(SQLID[playerid], "AmmoBoxSMG", Inventory[playerid][AmmoBox][AMMOBOX_SMG], "players");
- WeaponData[playerid][weapslot][WeaponAmmo] = GetDefaultWeaponAmmo(weapid);
- SyncPlayerWeapons(playerid);
- format(gstr, sizeof(gstr), "* %s retira algumas munições de uma pequena caixa e coloca na sua %s. *", NameRP(playerid), GetWeaponNameFromID(weapid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr), "Você recarregou sua %s.", GetWeaponNameFromID(weapid));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- SetPlayerArmedWeapon(playerid, weapid);
- return true;
- }
- else return SysMsg(playerid, "Você não tem caixa de munição para SMG");
- }
- else if(strcmp("Rifle", params, true) == 0)
- {
- if(Inventory[playerid][AmmoBox][AMMOBOX_RIFLE] > 0)
- {
- if(weapid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(weapid < 1 || weapid > 47) return SysMsg(playerid,"Arma inválida.");
- if(weapid == 19 || weapid == 20 || weapid == 21) return SysMsg(playerid,"Arma inválida.");
- weapslot = GetWeaponSlot(weapid);
- if(weapslot != 6) return SysMsg(playerid,"Essa arma não pode levar munições para Rifle.");
- if(WeaponData[playerid][weapslot][Weapon] != weapid) return SysMsg(playerid,"Você não possui essa arma.");
- if(WeaponData[playerid][weapslot][WeaponAmmo] == GetDefaultWeaponAmmo(weapid)) return SysMsg(playerid, "Essa arma já esta carregada com o máximo de munições suportada.");
- Inventory[playerid][AmmoBox][AMMOBOX_RIFLE] --;
- MySQLUpdateInt(SQLID[playerid], "AmmoBoxRifle", Inventory[playerid][AmmoBox][AMMOBOX_RIFLE], "players");
- WeaponData[playerid][weapslot][WeaponAmmo] = GetDefaultWeaponAmmo(weapid);
- SyncPlayerWeapons(playerid);
- format(gstr, sizeof(gstr), "* %s retira algumas munições de uma pequena caixa e coloca na sua %s. *", NameRP(playerid), GetWeaponNameFromID(weapid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr), "Você recarregou seu sua %s.", GetWeaponNameFromID(weapid));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- SetPlayerArmedWeapon(playerid, weapid);
- return true;
- }
- else return SysMsg(playerid, "Você não tem uma caixa de munições para Rifle.");
- }
- else if(strcmp("Assault", params, true) == 0)
- {
- if(Inventory[playerid][AmmoBox][AMMOBOX_ASSAULT] > 0)
- {
- if(weapid == -1) return SysMsg(playerid,"Nome da arma inválida.");
- if(weapid < 1 || weapid > 47) return SysMsg(playerid,"Arma inválida.");
- if(weapid == 19 || weapid == 20 || weapid == 21) return SysMsg(playerid,"Arma inválida.");
- weapslot = GetWeaponSlot(weapid);
- if(weapslot != 5) return SysMsg(playerid,"Essa arma não pode levar Munição Assault Rifle.");
- if(WeaponData[playerid][weapslot][Weapon] != weapid) return SysMsg(playerid,"Você não possui essa arma.");
- if(WeaponData[playerid][weapslot][WeaponAmmo] == GetDefaultWeaponAmmo(weapid)) return SysMsg(playerid, "Essa arma já esta carregada com o máximo de munições suportada.");
- Inventory[playerid][AmmoBox][AMMOBOX_ASSAULT] --;
- MySQLUpdateInt(SQLID[playerid], "AmmoBoxAssaultR", Inventory[playerid][AmmoBox][AMMOBOX_ASSAULT], "players");
- WeaponData[playerid][weapslot][WeaponAmmo] = GetDefaultWeaponAmmo(weapid);
- SyncPlayerWeapons(playerid);
- format(gstr, sizeof(gstr), "* %s retira algumas munições de uma pequena caixa e coloca na sua %s. *", NameRP(playerid), GetWeaponNameFromID(weapid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr), "Você recarregou sua %s.", GetWeaponNameFromID(weapid));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- SetPlayerArmedWeapon(playerid, weapid);
- return true;
- }
- else return SysMsg(playerid, "Você não possui caixas de munição de rifle de assalto.");
- }
- SysMsg(playerid,"Use: /usarmuni [TIPO DE MUNIÇÃO] - Tipos: 'Pistola', 'Shotgun', 'Rifle', 'Assault', 'SMG'");
- return true;
- }
- CMD:gps(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][GPS] == 0 && !IsPlayerInRangeOfPoint(playerid, 2.5, 1244.2136, 165.6529, 2091.3589)) return SysMsg(playerid,"Você não tem um GPS.");
- if(IsInHospital{playerid}) return SysMsg(playerid,"O GPS está sem sinal. (error 01)");
- if(IsDrivingBus{playerid}) return SysMsg(playerid,"O GPS está sem sinal. (error 02)");
- if(IsInHouseID[playerid] != -1) return SysMsg(playerid,"O GPS está sem sinal. (error 03)");
- if(IsInBizzID[playerid] != -1) return SysMsg(playerid,"O GPS está sem sinal. (error 04)");
- new MenuText[64];
- format(MenuText, sizeof(MenuText), "Definir Destino\nSalvar Local");
- if(HasGPSWaypoint[playerid] == 1) strcat(MenuText, "\nRemover Checkpoint");
- strcat(MenuText, "\nSair");
- Dialog_Show(playerid, GPSMenu, DIALOG_STYLE_LIST, "GPS MENU", MenuText, "Selecionar", "Cancelar");
- format(gstr, sizeof(gstr),"* %s visualiza seu gps... *",NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:navigateto(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(Inventory[playerid][GPS] == 0) return SysMsg(playerid,"Você não tem um GPS.");
- if(IsInHospital{playerid}) return SysMsg(playerid,"O GPS está sem sinal. (error 01)");
- if(IsDrivingBus{playerid}) return SysMsg(playerid,"O GPS está sem sinal. (error 02)");
- if(IsInHouseID[playerid] != -1) return SysMsg(playerid,"O GPS está sem sinal. (error 03)");
- if(IsInBizzID[playerid] != -1) return SysMsg(playerid,"O GPS está sem sinal. (error 04)");
- if(isnull(params)) return SysMsg(playerid,"Use: /navigateto(/navto) [Nome completo ou parto do nome de: Casa/Empresa]");
- if(strlen(params) < 3) return SysMsg(playerid,"Por favor, use um termo de pesquisa mais longo.");
- gstr[0] = EOS;
- new matchescount, a = 0, caption[50];
- for(a = 0; a < MAX_HOUSES; a++)
- {
- if(strlen(HouseData[a][HouseDescription]) > 1 && strfind(HouseData[a][HouseDescription], params, true) != -1)
- {
- if(strfind(HouseData[a][HouseDescription], "Flats Montgomery", true) != -1) continue;
- if(strfind(HouseData[a][HouseDescription], "Flats Dillimore", true) != -1) continue;
- if(strfind(HouseData[a][HouseDescription], "Flats Palomino", true) != -1) continue;
- matchescount ++;
- strcat(gstr, "{FF4753}Casa: {FFFFFF}");
- strcat(gstr, HouseData[a][HouseDescription]);
- strcat(gstr, "\n");
- if(strlen(gstr) > 1950) break;
- }
- }
- for(a = 0; a < MAX_BIZZ; a++)
- {
- if(strlen(gstr) > 1950) break;
- if(strlen(BizzData[a][BizzDescription]) > 1 && strfind(BizzData[a][BizzDescription], params, true) != -1)
- {
- matchescount ++;
- strcat(gstr, "{6896F1}Empresa: {FFFFFF}");
- strcat(gstr, BizzData[a][BizzDescription]);
- strcat(gstr, "\n");
- }
- }
- for(a = 0; a < MAX_INTERIORS; a++)
- {
- if(strlen(gstr) > 1950) break;
- if(strlen(Interiors[a][InteriorName]) > 1 && strfind(Interiors[a][InteriorName], params, true) != -1 && Interiors[a][InteriorNavTo] == 1)
- {
- matchescount++;
- strcat(gstr, "{FFCC11}Interior: {FFFFFF}");
- strcat(gstr, Interiors[a][InteriorName]);
- strcat(gstr, "\n");
- }
- }
- if(matchescount == 0) return SysMsg(playerid,"Nenhum local foi encontrado para esse nome pesquisado.");
- if(strlen(gstr) > 1950) SysMsg(playerid,"Quantidade máxima de locais esta sendo mostrado, para o resto, por favor, use um termo mais específico.");
- format(caption, sizeof(caption), "{FBFF00}%i {FFFFFF}possíveis localizações encontradas:", matchescount);
- Dialog_Show(playerid, NavigationDialog, DIALOG_STYLE_LIST, caption, gstr, "Definir", "Cancelar");
- return true;
- }
- CMD:navto(playerid, params[]) return cmd_navigateto(playerid, params);
- CMD:amarrar(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(PlayerLevel[playerid] < 4) return SysMsg(playerid,"Você precisa estar level 4 para comprar isso.");
- if(Inventory[playerid][Rope] == 0) return SysMsg(playerid,"Você não tem corda, compre uma, ou dessamare uma pessoa para obter uma corda.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode amarrar alguém se você mesmo estiver amarrado.");
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /amarrar [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode amarrar a si mesmo.");
- new vehicleid = GetPlayerVehicleID(playerid);
- new tvehicleid = GetPlayerVehicleID(playa);
- if(vehicleid == 0) return SysMsg(playerid, "Você precisa estar no mesmo carro de alguém para conseguir amarrar.");
- if(vehicleid != tvehicleid) return SysMsg(playerid, "Você precisa estar no mesmo carro que esta pessoa para fazer isso.");
- if(IsTied[playa] > 0) return SysMsg(playerid,"Esse jogador já esta amarrado.");
- new success = random(50);
- if(success < 25)
- {
- format(gstr, sizeof(gstr), "* %s tentou amarrar %s e não conseguiu. *", NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- Inventory[playerid][Rope] = 0;
- MySQLUpdateInt(SQLID[playerid], "HasRope", Inventory[playerid][Rope], "players");
- IsTied[playa] = 1200;
- TogglePlayerControllable(playa, 0);
- format(gstr, sizeof(gstr),"Você amarrou %s com sua corda.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr),"* %s pega uma corda de sua mochila e amarra %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:desamarra(playerid, params[])
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- if(IsTied[playerid] > 0) return SysMsg(playerid,"Você não pode desamarrar alguém quando você estiver amarrado.");
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid,"Use: /desamarra [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode desamarrar a si mesmo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,3.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para fazer isso.");
- if(IsTied[playa] == 0) return SysMsg(playerid,"Essa pessoa não está amarrada.");
- Inventory[playerid][Rope] = 1;
- MySQLUpdateInt(SQLID[playerid], "HasRope", Inventory[playerid][Rope], "players");
- IsTied[playa] = 0;
- TogglePlayerControllable(playa, 1);
- format(gstr, sizeof(gstr),"Você tirou a corda de %s e pegou de volta.", NameRP(playa));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr),"* %s tira a corda de %s. *",NameRP(playerid),NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:an(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(AdvertSpamTime[playerid] > 0) return SysMsg(playerid, "Aguarde entre publicar anúncios.");
- if(!AdvertsToggle{playerid}) return SysMsg(playerid, "Você não pode fazer um anúncio como você tem anúncios desativados.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você precisa de um celular celular para postar um anúncio.");
- if(IsPlayerInRangeOfPoint(playerid, 5.0, 1213.6669, 227.0907, 1019.5281) || IsPlayerInRangeOfPoint(playerid, 5.0, 754.812927, 102.666061, 70.551887) || IsPlayerInRangeOfPoint(playerid, 5.0, 885.252014, 2262.758544, 238.230422) || IsPlayerInRangeOfPoint(playerid, 2.5, 1182.8987,1360.4265,1002.8235))
- {
- if(isnull(params))
- {
- SysMsg(playerid,"Use: /an [mensagem]");
- SysMsg(playerid,"Examplo: '/an Isto é um teste' irá mostrar como: [Anúncio] Isto é um teste [Seu_Nome, celular: ###]");
- return true;
- }
- if(strlen(params) < 30) return SysMsg(playerid, "Seu anúncio é muito curto. Seja criativo e seja apenas IC.");
- new AdCost = strlen(params) * 5;
- if(IsDonator[playerid] < 3)
- {
- GivePlayerCash(playerid, -AdCost);
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio %i caracteres, custando-lhe $%i ($5/Letras).",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else if(IsDonator[playerid] == 3)
- {
- AdCost = AdCost / 2;
- GivePlayerCash(playerid, -AdCost);
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio %i caracteres, custando-lhe $%i. (Donator Bonus)",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else if(IsDonator[playerid] == 4)
- {
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio %i caracteres, custando-lhe $0. (Donator Bonus)",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- FACTIONS[FACTION_NEWS][FactionBankBalance] += floatround(1 * AdCost);
- MySQLUpdateInt(FACTION_NEWS, "BankBalance", FACTIONS[FACTION_NEWS][FactionBankBalance], "factions");
- foreach(new i: Player) if(Logged{i} && AdvertsToggle{i}) SendSplitMessageF(i, COLOR_GREEN, "[Anúncio] %s [%s, celular: %i]", params, NameEx(playerid), PhoneData[playerid][pNumber]);
- AddToLog("advert", gstr);
- return true;
- }
- SysMsg(playerid, "Você só pode criar um anúncio dentro de um escritório da News Corporation");
- return true;
- }
- CMD:anuncioprivado(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(AdvertSpamTime[playerid] > 0) return SysMsg(playerid, "Aguarde entre postar anúncios.");
- if(!AdvertsToggle{playerid}) return SysMsg(playerid, "Você não pode fazer um anúncio como você tem anúncios desativados.");
- if(Inventory[playerid][MobilePhone] == 0) return SysMsg(playerid,"Você precisa de um celular móvel para enviar um anúncio.");
- if(IsPlayerInRangeOfPoint(playerid, 5.0, 1213.6669, 227.0907, 1019.5281) || IsPlayerInRangeOfPoint(playerid, 5.0, 754.812927, 102.666061, 70.551887) || IsPlayerInRangeOfPoint(playerid, 5.0, 885.252014, 2262.758544, 238.230422) || IsPlayerInRangeOfPoint(playerid, 2.5, 1182.8987,1360.4265,1002.8235))
- {
- if(isnull(params))
- {
- SysMsg(playerid,"Use: /anuncioprivado [mensagem]");
- SysMsg(playerid,"Examplo: '/anuncioprivado Isto é um teste' irá mostrar como: [Anúncio privado] Isto é um teste [celular: #]");
- return true;
- }
- if(strlen(params) < 30) return SysMsg(playerid, "Seu anúncio é muito curto. Seja criativo e seja apenas IC.");
- new AdCost = strlen(params) * 8;
- if(IsDonator[playerid] < 3)
- {
- GivePlayerCash(playerid, -AdCost);
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio privado com %i caracteres, custando-lhe $%i ($8/Letra).",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else if(IsDonator[playerid] == 3)
- {
- AdCost = AdCost / 2;
- GivePlayerCash(playerid, -AdCost);
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio privado com %i caracteres, custando-lhe $%i. ($8/Letra)",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- else if(IsDonator[playerid] == 4)
- {
- AdvertSpamTime[playerid] = 60;
- format(gstr, sizeof(gstr),"Você fez um anúncio privado com %i caracteres, custando-lhe $%i. ($8/Letra)",strlen(params),AdCost);
- SendClientMessage(playerid,COLOR_WHITE,gstr);
- }
- FACTIONS[FACTION_NEWS][FactionBankBalance] += floatround(1 * AdCost);
- MySQLUpdateInt(FACTION_NEWS, "BankBalance", FACTIONS[FACTION_NEWS][FactionBankBalance], "factions");
- format(gstr, sizeof(gstr),"[Anúncio privado, celular %i] %s", PhoneData[playerid][pNumber], params);
- foreach(new i: Player) if(Logged{i} && AdvertsToggle{i}) SendSplitMessage(i, COLOR_GREEN, gstr);
- format(gstr, sizeof(gstr), "[Admin] ^^ Anúncio privado por %s (ID %i)", NameEx(playerid), playerid);
- AdminBroadcast(gstr, 0);
- AddToLog("advert", gstr);
- return true;
- }
- SysMsg(playerid, "Você só pode criar um anúncio dentro de um escritório da News Corporation");
- return true;
- }
- CMD:maleta(playerid, params[]) return cmd_briefcase(playerid, params);
- CMD:briefcase(playerid, params[])//sistema de maletas
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Briefcase] == 0) return SysMsg(playerid,"Você não tem uma maleta.");
- new action[10], storeitem[15], storeamount[25];
- if(sscanf(params, "s[10]S()[15]S()[25]", action, storeitem, storeamount)) return SysMsg(playerid,"Use: /maleta [conteúdo / mostrar / esconder / guardar / pegar / fechar / abrir / setcode]");
- if(strcmp("contents", action, true) == 0)
- {
- new itemcount, items[128];
- format(items, 128, "Minha maleta: ");
- if(BriefcaseWeapon[playerid] > 0)
- {
- new weapon, ammo, ammostr[12];
- mysql_format(conn, mquery, sizeof(mquery), "SELECT WeaponID, WeaponAmmo FROM weapons WHERE id = %i", BriefcaseWeapon[playerid]);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows())
- {
- weapon = cache_get_field_content_int(0, "WeaponID");
- ammo = cache_get_field_content_int(0, "WeaponAmmo");
- format(ammostr, sizeof(ammostr), "%i", ammo);
- itemcount ++;
- strcat(items, "Weapon(");
- strcat(items, GetWeaponNameFromID(weapon));
- strcat(items, " - ");
- strcat(items, ammostr);
- strcat(items, "ammo)");
- cache_delete(result);
- }
- else cache_delete(result);
- }
- if(BriefcaseCash[playerid] > 0)
- {
- new money[10];
- format(money, 10, "%i", BriefcaseCash[playerid]);
- itemcount ++;
- if(itemcount > 1) strcat(items, ", ");
- strcat(items, "Dinheiro($");
- strcat(items, money);
- strcat(items, ")");
- }
- if(BriefcaseWeed[playerid] > 0)
- {
- new drug[10];
- format(drug, 10, "%i", BriefcaseWeed[playerid]);
- itemcount ++;
- if(itemcount > 1) strcat(items, ", ");
- strcat(items, "Marijuana(");
- strcat(items, drug);
- strcat(items, ")");
- }
- if(BriefcaseCocaine[playerid] > 0)
- {
- new drug[10];
- format(drug, 10, "%i", BriefcaseCocaine[playerid]);
- itemcount ++;
- if(itemcount > 1) strcat(items, ", ");
- strcat(items, "Cocaina(");
- strcat(items, drug);
- strcat(items, ")");
- }
- if(itemcount == 0) strcat(items, "nada");
- SendClientMessage(playerid, COLOR_WHITE, items);
- }
- else if(strcmp("mostrar", action, true) == 0)
- {
- if(BriefcaseHolding[playerid] > 0) return SysMsg(playerid,"Você já está segurando sua maleta.");
- if(GetFreePlayerObjectIndex(playerid) == -1) return SysMsg(playerid, "Você está carregando muitos itens em sua pessoa no momento, tente remover alguns itens primeiro.");
- if(isnull(storeitem)) return SysMsg(playerid,"Use: /maleta [mostrar] [D(ireita) OU E(squerda)] -Mão do seu personagem-");
- for(new ao = 0; ao < 6; ao++)
- {
- if(AttachedObjects[playerid][ao][aoModelID] == 0)
- {
- if(strcmp("D", storeitem, true) == 0 || strcmp("direita", storeitem, true) == 0)
- {
- AttachedObjects[playerid][ao][aoModelID] = 19624;
- AttachedObjects[playerid][ao][aoBone] = 6;
- SetPlayerAttachedObject(playerid, ao, 19624, 6, 0.066999, 0.032000, 0.000000, -39.700004, -99.600051, 1.899998);
- BriefcaseHolding[playerid] = 1;
- return true;
- }
- else if(strcmp("E", storeitem, true) == 0 || strcmp("esquerda", storeitem, true) == 0)
- {
- AttachedObjects[playerid][ao][aoModelID] = 19624;
- AttachedObjects[playerid][ao][aoBone] = 5;
- SetPlayerAttachedObject(playerid, ao, 19624, 5, 0.066999, 0.032000, 0.000000, -39.700004, -99.600051, 1.899998);
- BriefcaseHolding[playerid] = 2;
- return true;
- }
- }
- }
- }
- else if(strcmp("esconder", action, true) == 0)
- {
- if(BriefcaseHolding[playerid] == 0) return SysMsg(playerid,"Você não está segurando sua maleta.");
- for(new ao = 0; ao < 6; ao++)
- {
- if(AttachedObjects[playerid][ao][aoModelID] == 19624)
- {
- RemovePlayerAttachedObject(playerid, ao);
- AttachedObjects[playerid][ao][aoModelID] = 0;
- AttachedObjects[playerid][ao][aoBone] = 0;
- BriefcaseHolding[playerid] = 0;
- return true;
- }
- }
- }
- else if(strcmp("guardar", action, true) == 0)
- {
- if(BriefcaseHolding[playerid] == 0) return SysMsg(playerid,"Você precisa estar segurando a maleta primeiro.");
- if(BriefcaseLocked[playerid] == 1) return SysMsg(playerid,"A maleta está fechada.");
- if(isnull(storeitem)) return SysMsg(playerid,"Use: /maleta [guardar] [Arma / Dinheiro / Marijuana / Cocaina]");
- if(strcmp("arma", storeitem, true) == 0)
- {
- if(BriefcaseWeapon[playerid] > 0) return SysMsg(playerid,"Você já possui uma arma na sua maleta.");
- if(isnull(storeamount)) return SysMsg(playerid,"Use: /maleta [guardar] [arma] [Nome da arma (Examplo: 9mm)]");
- new wid = GetWeaponIdFromName(storeamount);
- if(wid < 1) return SysMsg(playerid,"Nome da arma inválida.");
- new Slot = GetWeaponSlot(wid);
- if(WeaponData[playerid][Slot][Weapon] != wid) return SysMsg(playerid,"Você não tem essa arma para guardar.");
- if(wid == 2 || wid == 5 || wid == 6 || wid == 7 || wid == 8 || wid == 9 || wid == 15 || wid == 18 || wid == 25 || wid == 27 || wid == 30 || wid == 31 || wid == 33 || wid == 35 || wid == 36 || wid == 37 || wid == 38 || wid == 42) return SysMsg(playerid,"You cannot put that weapon in your Briefcase as it is too big.");
- if(WeaponData[playerid][Slot][WeaponOrigin] == 3) return SysMsg(playerid, "Você não pode armazenar armas de facção na sua maleta.");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET WeaponPossession = 0, WeaponAmmo = %i WHERE id = %i", WeaponData[playerid][Slot][WeaponAmmo], WeaponData[playerid][Slot][WeaponID]);
- mysql_pquery(conn, mquery);
- BriefcaseWeapon[playerid] = WeaponData[playerid][Slot][WeaponID];
- ResetWeaponVariables(playerid, 0, Slot);
- SetPlayerArmedWeapon(playerid, 0);
- SyncPlayerWeapons(playerid);
- MySQLUpdateInt(SQLID[playerid], "BriefcaseWeapon", BriefcaseWeapon[playerid], "players");
- format(gstr, sizeof(gstr), "Sua %s está dentro da maleta.", GetWeaponNameFromID(wid));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s guardar uma %s dentro de sua maleta. *", NameRP(playerid), GetWeaponNameFromID(wid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else if(strcmp("dinheiro", storeitem, true) == 0)
- {
- if(isnull(storeamount)) return SysMsg(playerid,"Use: /maleta [guardar] [dinheiro] [quantidade]");
- if(!IsNumeric(storeamount)) return SysMsg(playerid,"O valor em dinheiro deve ser um número.");
- new cashamount = strval(storeamount);
- if(cashamount < 1) return SysMsg(playerid,"O valor em dinheiro deve ser pelo menos $1.");
- if(cashamount > Cash[playerid]) return SysMsg(playerid,"Você não possui essa quantidade de dinheiro para armazenar.");
- if(BriefcaseCash[playerid] + cashamount > 1000000) return SysMsg(playerid,"Você só pode ter um máximo de $1,000,000 na sua pasta.");
- BriefcaseCash[playerid] += cashamount;
- GivePlayerCash(playerid, -cashamount);
- MySQLUpdateInt(SQLID[playerid], "BriefcaseCash", BriefcaseCash[playerid], "players");
- format(gstr, sizeof(gstr), "Você guardou $%s dentro da sua maleta. Existe agora um total de $%s.", format_cash(cashamount), format_cash(BriefcaseCash[playerid]));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s coloca algum dinheiro na pasta. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"[%s] %s(%i) guardou $%i na maleta.", GetServerTimeString(), NameEx(playerid), playerid, cashamount);
- AddToLog("cash", gstr);
- }
- else if(strcmp("marijuana", storeitem, true) == 0)
- {
- if(isnull(storeamount)) return SysMsg(playerid,"Use: /maleta [guardar] [marijuana] [quantidade (g)]");
- if(!IsNumeric(storeamount)) return SysMsg(playerid,"A quantidade precisa ser em número.");
- new amount = strval(storeamount);
- if(amount < 1) return SysMsg(playerid,"O número precisa ser maior que 1.");
- if(amount > Inventory[playerid][Weed]) return SysMsg(playerid,"Você não tem essa quantidade de erva para armazenar.");
- if(BriefcaseWeed[playerid] + amount > 100) return SysMsg(playerid,"Você só pode ter um máximo de 100g em sua maleta.");
- BriefcaseWeed[playerid] += amount;
- Inventory[playerid][Weed] -= amount;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseWeed", BriefcaseWeed[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "Weed", Inventory[playerid][Weed], "players");
- format(gstr, sizeof(gstr), "Você guardou %ig de marijuana na maleta. Existe agora um total de %ig.", amount, BriefcaseWeed[playerid]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s guarda algumas drogas na maleta *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else if(strcmp("Cocaina", storeitem, true) == 0)
- {
- if(isnull(storeamount)) return SysMsg(playerid,"Use: /maleta [guardar] [cocaina] [quantidade (g)]");
- if(!IsNumeric(storeamount)) return SysMsg(playerid,"O valor deve ser um número.");
- new amount = strval(storeamount);
- if(amount < 1) return SysMsg(playerid,"O valor deve ser pelo menos 1.");
- if(amount > Inventory[playerid][Cocaine]) return SysMsg(playerid,"Você não tem essa quantidade de cocaina para guardar.");
- if(BriefcaseCocaine[playerid] + amount > 100) return SysMsg(playerid,"Você só pode ter um máximo de 100g em sua maleta.");
- BriefcaseCocaine[playerid] += amount;
- Inventory[playerid][Cocaine] -= amount;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseCocaine", BriefcaseCocaine[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "Cocaine", Inventory[playerid][Cocaine], "players");
- format(gstr, sizeof(gstr), "Você colocou %ig de cocaina na sua maleta. Existe agora um total de %ig.", amount, BriefcaseCocaine[playerid]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s coloca algumas drogas em sua pasta. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- }
- else if(strcmp("pegar", action, true) == 0)
- {
- if(BriefcaseHolding[playerid] == 0) return SysMsg(playerid,"Você precisa estar segurando a maleta primeiro.");
- if(BriefcaseLocked[playerid] == 1) return SysMsg(playerid,"A maleta está fechada.");
- if(isnull(storeitem)) return SysMsg(playerid,"Use: /maleta [pegar] [Arma / Dinheiro / Marijuana / Cocaina]");
- if(strcmp("weapon", storeitem, true) == 0)
- {
- if(BriefcaseWeapon[playerid] == 0) return SysMsg(playerid,"Você não tem arma na sua maleta.");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT * FROM weapons WHERE id = %i", BriefcaseWeapon[playerid]);
- new Cache:result = mysql_query(conn, mquery);
- if(cache_num_rows())
- {
- new wid = cache_get_field_content_int(0, "WeaponID");
- new slot = GetWeaponSlot(wid);
- if(WeaponData[playerid][slot][Weapon] > 0) return SysMsg(playerid,"Você já possui uma arma do mesmo tipo em seu inventário.");
- WeaponData[playerid][slot][WeaponID] = BriefcaseWeapon[playerid];
- WeaponData[playerid][slot][Weapon] = wid;
- WeaponData[playerid][slot][WeaponAmmo] = cache_get_field_content_int(0, "WeaponAmmo");
- WeaponData[playerid][slot][WeaponPossession] = cache_get_field_content_int(0, "WeaponPossession");
- WeaponData[playerid][slot][wCreatorSQLID] = cache_get_field_content_int(0, "CreatorSQLID");
- WeaponData[playerid][slot][wOwnerSQLID] = cache_get_field_content_int(0, "OwnerSQLID");
- WeaponData[playerid][slot][WeaponType] = GetWeaponType(WeaponData[playerid][slot][Weapon]);
- WeaponData[playerid][slot][WeaponOrigin] = cache_get_field_content_int(0, "WeaponOrigin");
- WeaponData[playerid][slot][WeaponTimestamp] = cache_get_field_content_int(0, "Timestamp");
- cache_delete(result);
- BriefcaseWeapon[playerid] = 0;
- SyncPlayerWeapons(playerid);
- SetPlayerArmedWeapon(playerid, wid);
- MySQLUpdateInt(SQLID[playerid], "BriefcaseWeapon", BriefcaseWeapon[playerid], "players");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE weapons SET WeaponPossession = 1 WHERE id = %i", WeaponData[playerid][slot][WeaponID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr), "Você removeu uma %s da sua maleta.", GetWeaponNameFromID(wid));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s pega uma %s da sua maleta. *", NameRP(playerid), GetWeaponNameFromID(wid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else return SysMsg(playerid, "Ocorreu um Erro, contate um admin com este código de erro: BCGW.") && cache_delete(result);
- }
- else if(strcmp("dinheiro", storeitem, true) == 0)
- {
- if(isnull(storeamount)) return SysMsg(playerid,"Use: /maleta [pegar] [dinheiro] [quantidade]");
- if(!IsNumeric(storeamount)) return SysMsg(playerid,"O valor deve ser um número.");
- new cashamount = strval(storeamount);
- if(cashamount < 1) return SysMsg(playerid,"O valor deve ser maior que $1.");
- if(cashamount > BriefcaseCash[playerid]) return SysMsg(playerid,"Você não tem essa quantidade de dinheiro na sua maleta.");
- BriefcaseCash[playerid] -= cashamount;
- GivePlayerCash(playerid, cashamount);
- MySQLUpdateInt(SQLID[playerid], "BriefcaseCash", BriefcaseCash[playerid], "players");
- format(gstr, sizeof(gstr), "Você pegou $%s da sua maleta. Existe agora um total de $%s.", format_cash(cashamount), format_cash(BriefcaseCash[playerid]));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s pega algum dinheiro de dentro da maleta. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- format(gstr, sizeof(gstr),"[%s] %s(%i) pega $%i da sua maleta.", GetServerTimeString(), NameEx(playerid), playerid, cashamount);
- AddToLog("cash", gstr);
- }
- else if(strcmp("marijuana", storeitem, true) == 0)
- {
- if(isnull(storeamount)) return SysMsg(playerid,"Use: /maleta [pgar] [marijuana] [quantidade (g)]");
- if(!IsNumeric(storeamount)) return SysMsg(playerid,"O valor deve ser um número.");
- new amount = strval(storeamount);
- if(amount < 1) return SysMsg(playerid,"O valor deve ser pelo menos 1.");
- if(amount > BriefcaseWeed[playerid]) return SysMsg(playerid,"Você não tem essa quantidade.");
- if(Inventory[playerid][Weed] + amount > DRUG_MAX_WEED) return SysMsg(playerid,"Você não pode carregar essa quantidade de drogas.");
- BriefcaseWeed[playerid] -= amount;
- Inventory[playerid][Weed] += amount;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseWeed", BriefcaseWeed[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "Weed", Inventory[playerid][Weed], "players");
- format(gstr, sizeof(gstr), "Você pegou %ig de marijuana de sua maleta. Existe agora um total de %ig.", amount, BriefcaseWeed[playerid]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s pega algumas drogas de sua maleta. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else if(strcmp("Cocaina", storeitem, true) == 0)
- {
- if(strlen(storeamount) == 0) return SysMsg(playerid,"Use: /maleta [pegar] [cocaina] [quantidade (g)]");
- if(!IsNumeric(storeamount)) return SysMsg(playerid,"O valor deve ser um número.");
- new amount = strval(storeamount);
- if(amount < 1) return SysMsg(playerid,"O valor deve ser pelo menos 1.");
- if(amount > BriefcaseCocaine[playerid]) return SysMsg(playerid,"Você não tem essa quantidade.");
- if(Inventory[playerid][Cocaine] + amount > DRUG_MAX_COCAINE) return SysMsg(playerid,"Você não pode carregar essa quantidade de drogas.");
- BriefcaseCocaine[playerid] -= amount;
- Inventory[playerid][Cocaine] += amount;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseCocaine", BriefcaseCocaine[playerid], "players");
- MySQLUpdateInt(SQLID[playerid], "Cocaine", Inventory[playerid][Cocaine], "players");
- format(gstr, sizeof(gstr), "Você pegou %ig de cocaina de sua maleta. Existe agora um total de %ig.", amount, BriefcaseCocaine[playerid]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr), "* %s pega algumas drogas de sua maleta. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- }
- else if(strcmp("fechar", action, true) == 0)
- {
- if(BriefcaseHolding[playerid] == 0) return SysMsg(playerid,"Você precisa estar segurando a maleta primeiro.");
- if(BriefcaseLocked[playerid] == 1) return SysMsg(playerid,"A maleta já está fechada.");
- BriefcaseLocked[playerid] = 1;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseLocked", BriefcaseLocked[playerid], "players");
- SendClientMessage(playerid, COLOR_WHITE, "Você fechou sua maleta. (Lembre-se do seu código se você tiver um conjunto ou você não poderá desbloqueá-lo)");
- format(gstr, sizeof(gstr), "* %s fecha os clipes em sua maleta para trancá-la. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else if(strcmp("abrir", action, true) == 0)
- {
- if(BriefcaseHolding[playerid] == 0) return SysMsg(playerid,"Você precisa estar segurando a maleta primeiro.");
- if(BriefcaseLocked[playerid] == 0) return SysMsg(playerid,"A maleta já está aberta.");
- if(BriefcaseCode[playerid] > 0)
- {
- if(strlen(storeitem) == 0) return SysMsg(playerid,"Use: /maleta [abrir] [Code]");
- if(!IsNumeric(storeitem)) return SysMsg(playerid,"o codigo precisa ser em números.");
- new casecode = strval(storeitem);
- if(casecode < 1000 || casecode > 9999) return SysMsg(playerid,"Código só pode ser entre 1000 à 9999.");
- if(casecode != BriefcaseCode[playerid])
- {
- SendClientMessage(playerid, COLOR_WHITE, "Codego errado.");
- format(gstr, sizeof(gstr), "* A maleta de %s falha ao tentar abrir usando um código errado. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- BriefcaseLocked[playerid] = 0;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseLocked", BriefcaseLocked[playerid], "players");
- SendClientMessage(playerid, COLOR_WHITE, "Você destrancou sua maleta.");
- format(gstr, sizeof(gstr), "* %s abre sua maleta após inserir um código. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- else
- {
- BriefcaseLocked[playerid] = 0;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseLocked", BriefcaseLocked[playerid], "players");
- SendClientMessage(playerid, COLOR_WHITE, "Você destrancou sua maleta.");
- format(gstr, sizeof(gstr), "* %s destrava sua maleta e à abre. *", NameRP(playerid));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- }
- }
- else if(strcmp("setcode", action, true) == 0)
- {
- if(BriefcaseHolding[playerid] == 0) return SysMsg(playerid,"Você precisa estar segurando a maleta primeiro.");
- if(BriefcaseLocked[playerid] == 1) return SysMsg(playerid,"A maleta deve estar destrancada para fazer isso..");
- if(strlen(storeitem) == 0) return SysMsg(playerid,"Use: /maleta [SetCode] [novo code] *use 0 para remover o code*");
- if(!IsNumeric(storeitem)) return SysMsg(playerid,"Use apenas números.");
- new casecode = strval(storeitem);
- if(casecode == 0)
- {
- BriefcaseCode[playerid] = 0;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseCode", BriefcaseCode[playerid], "players");
- SendClientMessage(playerid, COLOR_WHITE, "Code removido.");
- return true;
- }
- if(casecode < 1000 || casecode > 9999) return SysMsg(playerid,"Código só pode ser entre 1000 à 9999.");
- if(casecode == BriefcaseCode[playerid]) return SysMsg(playerid,"Esse code já está sendo usado.");
- BriefcaseCode[playerid] = casecode;
- MySQLUpdateInt(SQLID[playerid], "BriefcaseCode", BriefcaseCode[playerid], "players");
- format(gstr, sizeof(gstr), "Briefcase code set to %i. (Don't forget it!)", BriefcaseCode[playerid]);
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- return true;
- }
- CMD:o(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(ToggleOOC == 0) return SysMsg(playerid,"Out of Character chat está desativado.");
- if(IsDonator[playerid] >= 2 && OOCToggle[playerid] == 1) return SysMsg(playerid,"Mensagem doador: Seu OOC chat está desativado.");
- if(gOOCDelay > 0) return SysMsg(playerid,"O chat global OOC é limitado a uma mensagem a cada 3 segundos. Por favor, espere.");
- if(isnull(params)) return SysMsg(playerid,"Use: Global OOC Chat: /o [mensagem]");
- new color = COLOR_OOC;
- if(IsDonator[playerid] >= 2 && GoldToggle[playerid] == 1) color = COLOR_DONATE;
- foreach(new i: Player) if(Logged{i}) if(OOCToggle[i] == 0) SendClientMessageF(i, color, "(( [OOC] %s diz: %s ))",NameEx(playerid),params);
- gOOCDelay = 3;
- return true;
- }
- CMD:b(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid, "Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(UsingCCTV{playerid}) return SysMsg(playerid, "Você não pode usar /b enquanto visualiza câmeras de CCTV.");
- if(!LocalOOCEnabled{playerid}) return SysMsg(playerid, "Você tem atualmente OOC local chat desativado (/togb).");
- if(isnull(params)) return SysMsg(playerid,"Use: Local OOC Chat: /b [mensagem]");
- new oocPlayersInArea = 0;
- new Float:myPos[3], vWorld = GetPlayerVirtualWorld(playerid);
- GetPlayerPos(playerid, myPos[0], myPos[1], myPos[2]);
- foreach(new i: Player)
- {
- if(GetPlayerVirtualWorld(i) == vWorld && IsPlayerInRangeOfPoint(i, 25.0, myPos[0], myPos[1], myPos[2]) && LocalOOCEnabled{i})
- {
- SendSplitMessageF(i, COLOR_LIGHTBLUE, "(( [OOC] %s: %s ))",NameEx(playerid),params);
- if(i != playerid && GetPlayerState(i) != 9) oocPlayersInArea++;
- }
- }
- if(oocPlayersInArea == 0) SysMsg(playerid, "Ninguém na área tem Chat OOC local habilitado.");
- return true;
- }
- CMD:togb(playerid)
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Faça o login primeiro.");
- LocalOOCEnabled{playerid} = !LocalOOCEnabled{playerid};
- if(!LocalOOCEnabled{playerid})
- {
- SendClientMessage(playerid, COLOR_WHITE, "O {009FFB}Local OOC {FFFFFF}está desativado para você.");
- SetPlayerChatBubble(playerid, "(( Desativado /b ))", COLOR_LIGHTBLUE, 15.0, 1000);
- }
- else
- {
- SendClientMessage(playerid, COLOR_WHITE, "O {009FFB}Local OOC {FFFFFF}chat Channel agora está habilitado para você.");
- SetPlayerChatBubble(playerid, "(( Ativado /b ))", COLOR_LIGHTBLUE, 15.0, 1000);
- }
- return true;
- }
- CMD:dooc(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsDonator[playerid] == 0) return SysMsg(playerid,"Esse recurso é apenas para donadores.");
- if(GlobalDOOCMute) return SysMsg(playerid,"Este bate-papo foi desativado globalmente, oh bem.");
- if(ToggleDOOC{playerid}) return SysMsg(playerid,"Você desativou esse bate-papo. Use /TogDooc");
- if(DOOCMuted[playerid] > 1) return SysMsg(playerid, "Você é silenciado por um Doador OOC.");
- if(isnull(params)) return SysMsg(playerid,"Use: Donator OOC Chat: /dooc [mensagem]");
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(IsDonator[i] > 0 && !ToggleDOOC{i})
- {
- SendSplitMessageF(i, COLOR_DONATE, "[Donator OOC] %s (Level %i) diz: %s",NameEx(playerid), IsDonator[playerid], params);
- }
- }
- }
- //IRC_SayF(IRCBot, IRC_DOOC_CHANNEL, "7[Donator OOC] %s (Level %i) says: %s",NameEx(playerid), IsDonator[playerid], params);
- return true;
- }
- CMD:g(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(UsingCCTV{playerid}) return SysMsg(playerid,"Você não pode fazer isso enquanto estiver usando o CCTV.");
- if(IsSpectating[playerid] != -1) return SysMsg(playerid, "Você não pode fazer isso enquanto espectador.");
- if(isnull(params)) return SysMsg(playerid,"Use: Gritar!: /g [mensagem]");
- if(GetPlayerVehicleID(playerid) == 0 && ShoutAnimToggle{playerid})
- {
- StopLoopingAnim(playerid);
- OnePlayAnim(playerid, "RIOT", "RIOT_shout", 3.0, 0, 0, 0, 0, 0);
- }
- if(UsingAccent[playerid] == 1) format(gstr, sizeof(gstr),"%s grita: [sotaque %s] %s", NameRP(playerid), Accent[playerid], params);
- else format(gstr, sizeof(gstr),"%s grita: %s", NameRP(playerid), params);
- ProxDetector(42.0,playerid, gstr,COLOR_ORANGE,COLOR_ORANGE,COLOR_ORANGE,COLOR_ORANGE,COLOR_ORANGE);
- if(UsingAccent[playerid] == 1) format(gstr, sizeof(gstr),"[sotaque %s] %s", Accent[playerid], params);
- else format(gstr, sizeof(gstr),"%s", params);
- if(UsingAccent[playerid] == 1) SendToInRangeBuilding(playerid, 15, COLOR_ORANGE, Accent[playerid], params);
- else SendToInRangeBuilding(playerid, 15, COLOR_ORANGE, "", params);
- SetPlayerChatBubble(playerid, params, COLOR_ORANGE, 15.0, 6000);
- return true;
- }
- CMD:s(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- new playa = -1, msg[150], name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]s[150]", name, msg)) return SysMsg(playerid,"Use: Sussuro: /s [ID ou nome do jogador] [mensagem]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Jogador inválido. Não pode ser você mesmo.");
- if(IsSpectating[playa] >= 0) return SysMsg(playerid,"Você deve estar perto do jogador para sussurrar.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,2.5,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para sussurrar.");
- if(UsingAccent[playerid] == 1) format(gstr, sizeof(gstr),"%s sussurra para você: [sotaque %s] %s", NameRP(playerid), Accent[playerid], msg);
- else format(gstr, sizeof(gstr),"%s whispers to you: %s", NameRP(playerid), msg);
- SendSplitMessage(playa,0x565F91FF,gstr);
- format(gstr, sizeof(gstr),"Você sussurra para %s: %s", NameRP(playa), msg);
- SendSplitMessage(playerid,0x565F91FF,gstr);
- format(gstr, sizeof(gstr),"* %s sussurra algo para %s... *", NameRP(playerid), NameRP(playa));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 15.0, 6000);
- //ProxDetector(10.0,playerid,gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- //CMD:low(playerid, params[]) return cmd_baixo(playerid, params);
- CMD:baixo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid, "Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(UsingCCTV{playerid}) return SysMsg(playerid,"Você não pode fazer isso enquanto usa o CCTV.");
- if(isnull(params)) return SysMsg(playerid,"Use: Conversa Baixo: /baixo [mensagem]");
- new vid = GetPlayerVehicleID(playerid);
- if(vid > 0 && VehicleHasWindows(vid))
- {
- if(WindowState{vid} == WINDOWS_CLOSED)
- {
- if(UsingAccent[playerid] == 1) format(gstr, sizeof(gstr),"[Baixo] %s diz: [sotaque %s] %s", NameRP(playerid), Accent[playerid], params);
- else format(gstr, sizeof(gstr),"[Quiet] %s says: %s", NameRP(playerid), params);
- foreach(new i: Player)
- {
- new VehId = GetPlayerVehicleID(i);
- if(VehId == vid) SendSplitMessage(i,COLOR_FADE3,gstr);
- }
- }
- else
- {
- if(UsingAccent[playerid] == 1) format(gstr, sizeof(gstr),"[Baixo] %s diz: [sotaque %s] %s", NameRP(playerid), Accent[playerid], params);
- else format(gstr, sizeof(gstr),"[Quiet] %s says: %s", NameRP(playerid), params);
- ProxDetector(4.0, playerid, gstr, COLOR_FADE1, COLOR_FADE2, COLOR_FADE3, COLOR_FADE4, COLOR_FADE5);
- }
- }
- else
- {
- if(UsingAccent[playerid] == 1) format(gstr, sizeof(gstr),"[Baixo] %s diz: [sotaque %s] %s", NameRP(playerid), Accent[playerid], params);
- else format(gstr, sizeof(gstr),"[Quiet] %s says: %s", NameRP(playerid), params);
- ProxDetector(4.0, playerid, gstr, COLOR_FADE1, COLOR_FADE2, COLOR_FADE3, COLOR_FADE4, COLOR_FADE5);
- }
- return true;
- }
- CMD:a(playerid, params[])
- {
- if(!IsPlayerAdminLevelOK(playerid, 1)) return false;
- if(isnull(params)) return SysMsg(playerid,"Use: Admin Chat: /a [mensagem]");
- foreach(new i: Player)
- {
- if(IsPlayerAdminLevelOK(i,1))
- {
- SendSplitMessageF(i, COLOR_RED, "[Admin] %s: %s",NameEx(playerid),params);
- }
- }
- //IRC_SayF(IRCBot, IRC_ADMIN_CHANNEL, "4[Admin] %s: %s", NameEx(playerid), params);
- return true;
- }
- CMD:r(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid,"Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem um Radio.");
- if(RadioPoweredOn[playerid] == 0) return SysMsg(playerid,"Seu Rádio não está ligado. (/ron /roff)");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu rádio foi confiscado e será devolvido após a sua libertação.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o seu rádio enquanto estiver algemado.");
- if(isnull(params)) return SysMsg(playerid,"Use: Radio Chat: /r [mensagem]");
- foreach(new i: Player)
- {
- if(Logged{i} && RadioFrequency[playerid] == RadioFrequency[i] && RadioPoweredOn[i] == 1)
- {
- if(i != playerid) SendSplitMessageF(i, 0x967100FF, "[Radio - %i MHz] %s: %s", RadioFrequency[playerid], NameRP(playerid), params);
- }
- }
- format(gstr, sizeof(gstr), "%s diz (radio): %s", NameRP(playerid), params);
- ProxDetector(15.0, playerid, gstr, COLOR_FADE1, COLOR_FADE2, COLOR_FADE3, COLOR_FADE4, COLOR_FADE5);
- return true;
- }
- CMD:lr(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Muted[playerid] > 0) return SysMsgF(playerid, "Você está mudo. (%i minutos restantes)", Muted[playerid]);
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem um Radio.");
- if(RadioPoweredOn[playerid] == 0) return SysMsg(playerid,"Seu Rádio não está ligado. (/ron /roff)");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu rádio foi confiscado e será devolvido após a sua libertação.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o seu rádio enquanto estiver algemado.");
- if(isnull(params)) return SysMsg(playerid,"Use: Baixo no Radio: /lr [mensagem] *Sussurro em rádio*");
- foreach(new i: Player)
- {
- if(Logged{i} && RadioFrequency[playerid] == RadioFrequency[i] && RadioPoweredOn[i] == 1)
- {
- if(i != playerid) SendSplitMessageF(i, 0x967100FF, "[Radio - %i MHz] [Baixo] %s: %s", RadioFrequency[playerid], NameRP(playerid), params);
- }
- }
- format(gstr, sizeof(gstr), "[Baixo] %s diz (radio): %s", NameRP(playerid), params);
- ProxDetector(4.0, playerid, gstr, COLOR_FADE1, COLOR_FADE2, COLOR_FADE3, COLOR_FADE4, COLOR_FADE5);
- return true;
- }
- //end of chats rtune
- CMD:rfreq(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem um Radio.");
- if(RadioPoweredOn[playerid] == 0) return SysMsg(playerid,"Seu Rádio não está ligado. (/ron /roff)");
- new Frequency;
- if(sscanf(params, "i", Frequency)) return SysMsg(playerid,"Use: /rfreq [frequência do canal]");
- if(Frequency < 1000 || Frequency > 9999) return SysMsg(playerid,"A frequência do canal deve estar entre 1000 MHz e 9999 MHz.");
- if(Frequency == RadioFrequency[playerid]) return SysMsg(playerid,"A frequência do canal já está configurada para isso.");
- new i, allow = 1;
- for(i = 0; i < MAX_FACTIONS; i++)
- {
- if(FACTIONS[i][FactionRadioChannel] == Frequency && Faction[playerid] != i)
- {
- allow = 0;
- break;
- }
- }
- if(allow == 0) return SysMsg(playerid, "A frequência do canal é reservada.");
- RadioFrequency[playerid] = Frequency;
- RadioSlot[playerid][RadioSlotUsed[playerid] - 1] = Frequency;
- new sub[32];
- format(sub, sizeof(sub), "RadioSlot%i", RadioSlotUsed[playerid]);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET RadioFrequency = %i, %s = %i WHERE id = %i", RadioFrequency[playerid], sub, RadioFrequency[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SysMsgF(playerid, "Radio Re-Definido para frquência %i MHz.", RadioFrequency[playerid]);
- format(gstr, sizeof(gstr), "* %s liga seu Radio e define uma frequência. *", NameRP(playerid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:rslot(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid, "Você não tem um rádio.");
- if(RadioPoweredOn[playerid] == 0) return SysMsg(playerid, "O rádio não está ligado. (/ron)");
- new slot;
- if(sscanf(params, "i", slot)) return SysMsg(playerid, "Use: /rslot [Radio slot 1-3]");
- if(slot <= 0) return SysMsg(playerid, "Slot de rádio não pode ser menor do que 1.");
- if(slot >= 4) return SysMsg(playerid, "Slot de rádio não pode ser maior do que 3.");
- if(RadioSlotUsed[playerid] == slot) return SysMsg(playerid, "Você já está usando este slot.");
- RadioSlotUsed[playerid] = slot;
- RadioFrequency[playerid] = RadioSlot[playerid][slot - 1];
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE players SET RadioFrequency = %i, RadioSlotInUse = %i WHERE id = %i", RadioFrequency[playerid], RadioSlotUsed[playerid], SQLID[playerid]);
- mysql_pquery(conn, mquery);
- SysMsgF(playerid, "O slot de rádio mudou para %i, que está sintonizado para %i", slot, RadioFrequency[playerid]);
- //format(gstr, sizeof(gstr), "* %s turns a smaller dial on their radio, switching their radio slot. *", NameRP(playerid));
- //ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- CMD:rinfo(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem um Radio.");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu rádio foi confiscado e será devolvido após a sua libertação.");
- new onoff[4], color[7];
- switch(RadioPoweredOn[playerid])
- {
- case 0:
- {
- format(onoff, sizeof(onoff), "off");
- format(color, sizeof(color), "FF3414");
- }
- case 1:
- {
- format(onoff, sizeof(onoff), "on");
- format(color, sizeof(color), "18A300");
- }
- }
- SendClientMessageF(playerid, COLOR_WHITE, "Seu rádio está atualmente {%s}%s{FFFFFF} e está sintonizado para {38C0FF}%i{FFFFFF} MHz no slot %i.", color, onoff, RadioFrequency[playerid], RadioSlotUsed[playerid]);
- SendClientMessageF(playerid, COLOR_WHITE, "Os seus slots de rádio estão atualmente configurados para as seguintes frequências: Slot 1: %i, Slot 2: %i e slot 3: %i.", RadioSlot[playerid][0], RadioSlot[playerid][1], RadioSlot[playerid][2]);
- return true;
- }
- CMD:ron(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem um Radio.");
- if(RadioPoweredOn[playerid] == 1) return SysMsg(playerid,"Seu rádio já está ligado. (/roff)");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu rádio foi confiscado e será devolvido após a sua libertação.");
- RadioPoweredOn[playerid] = 1;
- MySQLUpdateInt(SQLID[playerid], "RadioPower", RadioPoweredOn[playerid], "players");
- SysMsgF(playerid, "Rádio ativado, você está sincronizado na frequencia %i MHz.", RadioFrequency[playerid]);
- return true;
- }
- CMD:roff(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Radio] == 0) return SysMsg(playerid,"Você não tem um Radio.");
- if(RadioPoweredOn[playerid] == 0) return SysMsg(playerid,"Seu rádio já está desligado. (/ron)");
- if(IsJailed[playerid] == 1 || PlayerImprisoned{playerid}) return SysMsg(playerid,"Seu rádio foi confiscado e será devolvido após a sua libertação.");
- RadioPoweredOn[playerid] = 0;
- MySQLUpdateInt(SQLID[playerid], "RadioPower", RadioPoweredOn[playerid], "players");
- SysMsg(playerid, "Radio desligado.");
- return true;
- }
- CMD:isafk(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid, "Use: /isafk [ID ou nome do jogador]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(IsAFK{playa}) SendClientMessageF(playerid, COLOR_GREEN, "[AFK] %s esteve AFK por %i minutos. Razão: %s",NameEx(playa),AwayMinutes[playa],AFKReason[playa]);
- else SendClientMessageF(playerid, COLOR_GREEN, "[AFK] %s não está marcado como AFK.",NameEx(playa));
- return true;
- }
- CMD:afk(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER || GetPlayerState(playerid) == 5 || ViewingBuyableCar[playerid] == 1) return SysMsg(playerid, "Você não pode ficar AFK ao dirigir.");
- if(IsTied[playerid] > 0) return SysMsg(playerid, "Você não pode ir AFK quando amarrado.");
- if(IsAFK{playerid}) return SysMsg(playerid, "Você já está AFK.");
- if(IsCuffed[playerid] == 1) return SysMsg(playerid, "Você não pode usar o comando de AFK quando se estiver algemado.");
- if(IsFrozen[playerid] == 1) return SysMsg(playerid, "Você não pode usar o comando de quando congelado.");
- if(Dead{playerid}) return SysMsg(playerid, "Você não pode usar o comando de AFK se esta abatido.");
- new ReasonString[64], Reason[64];
- IsAFK{playerid} = true;
- AwayMinutes[playerid] = 0;
- if(isnull(params))
- {
- Reason = "Nenhuma";
- format(ReasonString,sizeof(ReasonString),"[AFK]\nAway por 0 Minutos");
- }
- else
- {
- format(Reason,sizeof(Reason),params);
- format(ReasonString,sizeof(ReasonString),"[AFK]\nAway por 0 Minutos\nRazão: %s", Reason);
- }
- FreezePlayer(playerid);
- TextDrawShowForPlayer(playerid, URAFK2);
- TextDrawShowForPlayer(playerid, URAFK3);
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- if(!IsPlayerMasked{playerid}) format(sgstr, sizeof(sgstr), "[AFK] Um jogador próximo agora esta AFK: %s(%i) [Razão: %s]", NameEx(playerid), playerid, Reason);
- else format(sgstr, sizeof(sgstr), "[AFK] Um jogador próximo agora esta AFK: %s [Razão: %s]", NameRP(playerid), Reason);
- ProxDetector(20.0, playerid, sgstr, COLOR_GREEN, COLOR_GREEN, COLOR_GREEN, COLOR_GREEN, COLOR_GREEN);
- AFKReason[playerid] = Reason;
- if(IsPlayerMasked{playerid}) AFK_Label[playerid] = CreateDynamic3DTextLabel(ReasonString, COLOR_GREEN, x, y, z+0.5, 20.0, playerid, INVALID_VEHICLE_ID, 1, GetPlayerVirtualWorld(playerid), -1, -1, 20.0);
- else AFK_Label[playerid] = CreateDynamic3DTextLabel(ReasonString, COLOR_GREEN, x, y, z, 20.0, playerid, INVALID_VEHICLE_ID, 1, GetPlayerVirtualWorld(playerid), -1, -1, 20.0);
- if(ADuty[playerid] == 1)
- {
- ADuty[playerid] = 0;
- SetPlayerColor(playerid, 0xFFFFFF00);
- if(UsingPaint{playerid}) cmd_paint(playerid);
- SysMsg(playerid,"Admin Duty foi desativado automaticamente desde você esta AFK.");
- }
- return true;
- }
- CMD:volta(playerid)
- {
- if(!Logged{playerid}) return true;
- if(!IsAFK{playerid}) return SysMsg(playerid, "Você não está afk.") && DeleteAFKLabel(playerid);
- printf("[Cmd] %s Não esta mais AFK. (%i:%s)",NameEx(playerid), AwayMinutes[playerid], AFKReason[playerid]);
- if(!IsPlayerMasked{playerid}) format(gstr, sizeof(gstr), "[AFK] Um jogador nas proximidades não esta mais AFK: %s(%i). Ele esteve ausente por %i minutos. [Razão: %s]", NameEx(playerid), playerid, AwayMinutes[playerid], AFKReason[playerid]);
- else format(gstr, sizeof(gstr), "[AFK] Um jogador nas proximidades não é mais AFK: %s. Ele esteve ausente por %i minutos. [Razão: %s]", NameRP(playerid), AwayMinutes[playerid], AFKReason[playerid]);
- ProxDetector(20.0, playerid, gstr, COLOR_GREEN, COLOR_GREEN, COLOR_GREEN, COLOR_GREEN, COLOR_GREEN);
- DeleteAFKLabel(playerid);
- UnFreezePlayer(playerid);
- ShowInfoText(playerid, " ", 100);
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) RemovePlayerFromVehicle(playerid);
- TextDrawHideForPlayer(playerid, URAFK2);
- TextDrawHideForPlayer(playerid, URAFK3);
- return true;
- }
- CMD:verlistadonates(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new count = 0;
- gstr[0] = EOS;
- foreach(new i: Player)
- {
- if(Logged{i} && IsDonator[i] > 0)
- {
- count ++;
- format(tgstr, sizeof(tgstr), "%s (ID %i) - Level %i\n", NameEx(i), i, IsDonator[i]);
- strcat(gstr, tgstr);
- }
- }
- format(tgstr, sizeof(tgstr), "Lista de jogadores doa online (%i Donates)", count);
- ShowMessage(playerid, tgstr, gstr, "Ok");
- return true;
- }
- CMD:ajuda(playerid, params[])//traduzir
- {
- if(!Logged{playerid}) return true;
- UnlockAchievement(playerid, 10);
- if(isnull(params))
- {
- SendClientMessage(playerid, COLOR_LIGHTGREEN, "GreenSide Roleplay Ajuda - Use: /ajuda [Opção]");
- SendClientMessage(playerid, COLOR_WHITE, "Opções: Geral, Chat, Facção, Negocio, Casa, Motel, Furniture, Veiculo, Trabalho, Pesca, Celular, Crate, Donate, Banco, Helper");
- return true;
- }
- if(strcmp("Geral", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Comandos Gerais: /pagar /reportar /animlist /entrar /sair /admins /ip /hora (/afk /voltar /isafk) /an(anuncio) /comprarroupas /stats /dar");
- SendClientMessage(playerid,COLOR_YELLOW,"/comprarlevel /comprar /comprarcomida /banco /escrevernota /inventario /usarmuni /beber /comprarbilhete /aposta /comprararmaskill /conquistas /verlistadonates");
- SendClientMessage(playerid,COLOR_YELLOW,"/pm /forum /anuncioprivado /vender /cancelarvenda /celularinfo /velocimetro /tentar /mostrarchaves /ame /fcumprimentar /aparencia /versao(/uptime)");
- SendClientMessage(playerid,COLOR_YELLOW,"/descrever /animegrito /idade /shake /beijar /faconline /mudarspawn /helpers /meuadminrecord /boombox /boomboxid");
- SendClientMessage(playerid,COLOR_YELLOW,"/sos /cancelarassistencia /cancelartaxi /revistar /ultimavezonline /contamaster(/ma) /characters");
- }
- else if(strcmp("Crate", params, true) == 0) return cmd_caixa(playerid, "Ajuda");
- else if(strcmp("Chats", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Comandos de bate-papo: Global OOC /o, Local OOC /b, Sussurro /w, Gritar /s, Facção /f, Baixo /baixo [RADIO: /r /lr(Falar baixo) /rfreq /ron /roff /rinfo /rslot]");
- SendClientMessage(playerid,COLOR_YELLOW,"Toggle Chats: /togb /toganuncios /tognews");
- }
- else if(strcmp("Faccao", params, true) == 0 || strcmp("Facçao", params, true) == 0 || strcmp("Faccão", params, true) == 0 || strcmp("Facção", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Comandos de Facção: /skin /members /mostrarcracha /fanuncio /fcars /ultimodirigido /togf");
- if(FactionRank[playerid] >= FACTIONS[Faction[playerid]][FactionLeaderRank]) SendClientMessage(playerid,COLOR_YELLOW,"Comandos Leader: /fpagar /fsave /contratarfac /rebaixarrank /promover /despedir /togglef (globally tog fchat) /setsubrank /frespawn /setfmotd /setrank(Rank dos veiculos)");
- if(FactionRank[playerid] >= FACTIONS[Faction[playerid]][FactionUberLeaderRank]) SendClientMessage(playerid,COLOR_YELLOW,"Apenas Leader: /setrankname /setspawnpoint /removespawnpoint /fsaque");
- if(Faction[playerid] == FACTION_COP)
- {
- SendClientMessage(playerid, COLOR_WHITE, "PD comandos: /duty /(un)cuff /jail /detain /taser /fine /psa /rb(/roadblock) /removeRB /wanted /swat /stinger");
- SendClientMessage(playerid, COLOR_WHITE, "/find /drag /forcein /cases /ram /backup /bkcancel /removermascara /speed /pticket /impound /laser /setunit /togunit");
- SendClientMessage(playerid, COLOR_WHITE, "/mdc /grantweaponlicense /revokeweaponlicense /revokelicense /viewimpounds /siren /gunrack /addsiren");
- SendClientMessage(playerid, COLOR_WHITE, "/prison /editprison /releaseprisoner /celldoor /prisoners /pan /fecharpdoor");
- }
- else if(Faction[playerid] == FACTION_SACFD)
- {
- SendClientMessage(playerid, COLOR_WHITE, "SACFD comandos: /duty /siren /fheal /rb /pager /pagermsg /heal /detox");
- SendClientMessage(playerid, COLOR_WHITE, "SACFD comandos: /rescue /drag /cut /ram /backup /bkCancelar");
- SendClientMessage(playerid, COLOR_WHITE, "SACFD comandos: /equip /ladder /scba /smask /firehat /stretcher");
- }
- else if(Faction[playerid] == FACTION_NEWS)
- {
- SendClientMessage(playerid, COLOR_WHITE, "San Andreas News comandos: /duty /news /interview /endinterview /ichat /checkweather /starttalkshow /endtalkshow /toglines");
- SendClientMessage(playerid, COLOR_WHITE, "/acceptcaller /endcall /denycaller /chamarers /tchat");
- }
- else if(Faction[playerid] == FACTION_TRUCKING) SendClientMessage(playerid, COLOR_WHITE, "Elite Trucking comandos: /checkfuel /deliverfuel /supplyfuel /endfueldelivery /truck /tlon /tloff /detach /tow /deliverstock");
- else if(Faction[playerid] == FACTION_PROP) SendClientMessage(playerid, COLOR_WHITE, "Property comandos: /reloadhouses /reloadbizz /addp");
- }
- else if(strcmp("negocio", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Bizz comandos: /buybizz /venderbizz /mybizz /fechar /enterfee /collectearnings /requeststock /bizzmusic");
- SendClientMessage(playerid, COLOR_YELLOW, "Bizz Manager comandos: /addmanager /removemanager /viewmanagers /manageactors /badvert");
- }
- else if(strcmp("casa", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"House comandos: /buyhouse /vendermyhouse /minhascasas /fechar /escrevernota /batenaporta /housestore /houseget /houseview /housemusic");
- SendClientMessage(playerid,COLOR_YELLOW,"House Guests: /movein /moveout /evictguest /light");
- }
- else if(strcmp("Motel", params, true) == 0) SendClientMessage(playerid,COLOR_YELLOW,"Comandos do motel: /alugarquarto /devolverquarto /estenderaluguel");
- else if(strcmp("Furniture", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Furniture comandos: /placef /selectf /selectflist /removef /removeallf /pickupallf /furniturecount /furniturelimit");
- SendClientMessage(playerid,COLOR_YELLOW,"Furniture comandos: /reloadmyfurniture /pagarfurn /guestfurnish /buyf /searchf");
- }
- else if(strcmp("Veiculo", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Vehicle comandos: /eon(/engineon) /moff(/engineoff) /refuel /usargalao/enchergalao /esvaziartanque /rw /trunk /eject /engineinfo");
- SendClientMessage(playerid,COLOR_YELLOW,"Vehicle comandos: /luzes /vluzes /capo /trocaroleo /reparar /mod /recuperarveiculo /removeplate");
- SendClientMessage(playerid,COLOR_YELLOW,"Vehicle Ownership: /fechar /savecar /meuscarros /(set)forsale /removeranuncio");
- SendClientMessage(playerid,COLOR_YELLOW,"Shared Vehicle: /removerchaves /darchave");
- }
- else if(strcmp("trabalho", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Job comandos: /pegartrabalho /deixartrabalho, Side Jobs: /jobs");
- if(Job[playerid] == JOB_MECHANIC) SendClientMessage(playerid, COLOR_WHITE, "Mechanic: /spray /reparar /nitro /hyd /mecanicochamadas /limparchamadamecanica");
- else if(Job[playerid] == JOB_MAINTENANCE) SendClientMessage(playerid, COLOR_WHITE, "Maintenance Worker: /trabalho /checklitterbag /emptylitterbag /picklitter");
- else if(Job[playerid] == JOB_TAXI) SendClientMessage(playerid, COLOR_WHITE, "Taxi Driver: /trabalho /meteron /meteroff /oferecertarifa /cancelartaximetro /atualizarmapa /taximetro /meutaximetro");
- else if(Job[playerid] == JOB_DRUGDEALER) SendClientMessage(playerid, COLOR_WHITE, "Drug Dealer: /comprardrogas");
- }
- else if(strcmp("Pesca", params, true) == 0) SendClientMessage(playerid,COLOR_YELLOW,"Fishing comandos: /fish /venderfish /peixes /putback /putallVoltar");
- else if(strcmp("Celular", params, true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Phone comandos: /chamar(/discar) /sms(/sms) /pickup(/p) /finalizar(/h) /phoneoff(/coff) /phoneon(/con) /celularinfo(/cinfo)");
- SendClientMessage(playerid,COLOR_YELLOW,"Phone comandos: /ccarregar /chamarback /resms(/respondersms) /caltofalante /celular /lp /celularmostrar");
- }
- else if(strcmp("Doador", params, true) == 0)
- {
- if(IsDonator[playerid] == 0) return SysMsg(playerid,"You are not a Donator.");
- SendClientMessage(playerid,COLOR_YELLOW,"Donator comandos: /TogOOC /TogGold /mudarevdonate");
- SendClientMessage(playerid,COLOR_YELLOW,"Ignore comandos: /togpm /pmignorados");
- }
- else if(strcmp("Banco", params, true) == 0) SendClientMessage(playerid,COLOR_YELLOW,"Banking & Money comandos: /banco /atm /asscheque /cheques /depositarcheque");
- else if(strmatch("Helper", params))
- {
- if(IsHelper{playerid})
- {
- SendClientMessage(playerid, COLOR_YELLOW,"Helper comandos: /assistencias /fassistencia(Para finalizar) /requestadmin /freeze /unfreeze /delv /vspec ");
- SendClientMessage(playerid, COLOR_YELLOW,"Helper comandos: /namechanges /confirmnome /reefer /toghmsg /hc /toghchat");
- }
- else return SysMsg(playerid, "Você precisa ser Helper para entrar nesta sessão.");
- }
- return true;
- }
- CMD:forum(playerid)
- {
- if(!Logged{playerid}) return true;
- SendClientMessage(playerid, COLOR_WHITE, "Greenside Roleplay - Forum: http://greensiderp.com/forum/");//parei aqui
- return true;
- }
- CMD:players(playerid)
- {
- if(!Logged{playerid}) return true;
- SendClientMessageF(playerid, COLOR_WHITE, "Players Online: %i (Max %i) | NPC's Online: 1 | Veiculos: %i (Max %i) | Veículos com Dono %i (Max %i)", GetOnlinePlayerCount(), MAX_PLAYERS - 1, GetVehiclePoolSize(), MAX_VEHICLES, GetOwnedVehicleCount(), MAX_BUYVEHS);
- return true;
- }
- CMD:actors(playerid)
- {
- if(!IsPlayerAdminLevelOK(playerid, 1)) return true;
- SendClientMessageF(playerid, COLOR_WHITE, "%i actores atualmente estão no servidor.", GetActorPoolSize());
- return true;
- }
- CMD:adnubs(playerid) return cmd_admins(playerid);
- CMD:admins(playerid)
- {
- if(!Logged{playerid}) return true;
- new aduty[38], acount = 0, alist[MAX_PLAYERS][2];
- foreach(new i: Player)
- {
- if(Logged{i} && AdminLevel[i] >= 1)
- {
- if(AdminHidden[i] && !IsPlayerAdminLevelOK(playerid, 1)) continue;
- if(MasterAccount[i] == 174) //t0mbXD master account
- {
- alist[acount][0] = i;
- alist[acount][1] = 6;
- acount ++;
- continue;
- }
- if(AdminLevel[i] == 1)
- {
- alist[acount][0] = i;
- alist[acount][1] = 1;
- acount ++;
- continue;
- }
- if(AdminLevel[i] == 2)
- {
- alist[acount][0] = i;
- alist[acount][1] = 2;
- acount ++;
- continue;
- }
- if(AdminLevel[i] == 3)
- {
- alist[acount][0] = i;
- alist[acount][1] = 3;
- acount ++;
- continue;
- }
- if(AdminLevel[i] == 4)
- {
- alist[acount][0] = i;
- alist[acount][1] = 4;
- acount ++;
- continue;
- }
- }
- }
- if(acount == 0) return SendClientMessage(playerid, COLOR_SIGN, "Atualmente, não há Administradores on-line.");
- SortDeepArray(alist, 1, .order = SORT_DESC);
- new i;
- SendClientMessage(playerid, COLOR_WHITE, "Admins Online:");
- for(new count = 0; count < acount; count++)
- {
- i = alist[count][0];
- switch(ADuty[i])
- {
- case 0: format(aduty, sizeof(aduty), "Status: {FF0000}In Roleplay");
- case 1: format(aduty, sizeof(aduty), "Status: {4BB74C}Administrando");
- case 2: format(aduty, sizeof(aduty), "Status: {7C0000}Não quer ser pertubado");
- }
- if(IsAssisting[i] != -1) format(aduty, sizeof(aduty), "Status: {4BB74C}Dando assistencia");
- if(IsAFK{i}) format(aduty, sizeof(aduty), "Status: {FF6600}Away From Keyboard (AFK)");
- if(AdminHidden[i]) format(aduty, sizeof(aduty), "Status: {636A76}Escondido");
- if(alist[count][1] == 6)
- {
- SendClientMessageF(playerid, COLOR_SIGN, "Server Owner: %s (%s, ID %i) %s", NameEx(i), MasterAccountName[i], i, aduty);
- continue;
- }
- if(alist[count][1] == 1)
- {
- SendClientMessageF(playerid, COLOR_SIGN, "Trial Administrator: %s (%s, ID %i) %s", NameEx(i), MasterAccountName[i], i, aduty);
- continue;
- }
- if(alist[count][1] == 2)
- {
- SendClientMessageF(playerid, COLOR_SIGN, "Administrator: %s (%s, ID %i) %s", NameEx(i), MasterAccountName[i], i, aduty);
- continue;
- }
- if(alist[count][1] == 3)
- {
- SendClientMessageF(playerid, COLOR_SIGN, "Lead Administrator: %s (%s, ID %i) %s", NameEx(i), MasterAccountName[i], i, aduty);
- continue;
- }
- if(alist[count][1] == 4)
- {
- SendClientMessageF(playerid, COLOR_SIGN, "Management: %s (%s, ID %i) %s", NameEx(i), MasterAccountName[i], i, aduty);
- continue;
- }
- }
- return true;
- }
- CMD:helpers(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new hcount = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Helpers online:");
- foreach(new i: Player)
- {
- if(Logged{i} && IsHelper{i})
- {
- hcount ++;
- SendClientMessageF(playerid, COLOR_SIGN, "{09B300}%s {FFFFFF}(ID %i)", NameEx(i), i);
- }
- }
- if(hcount == 0) return SendClientMessage(playerid, COLOR_SIGN, "Atualmente, não há Helpers on-line.");
- return true;
- }
- CMD:mudarmeunome(playerid, params[])//mudarmeunome
- {
- if(!Logged{playerid}) return true;
- gstr[0] = EOS;
- new count = 0;
- foreach(new i: Player) if(IsPlayerAdminLevelOK(i,1) || IsHelper{i}) count ++;
- if(count == 0) return SysMsg(playerid, "É necessário que um administrador confirme sua troca de nome, não há nenhum online no momento.");
- if(Cash[playerid] < 25000) return SysMsg(playerid,"Você precisa de $25,000 para alterar seu nome.");
- strcat(gstr, "{FFFFFF}Para mudar seu nome, você deve ter o dinheiro exigido.");
- strcat(gstr, "\nTambém é possível limpar seu registro criminal junto com uma alteração para fins CK.");
- strcat(gstr, "\n\nMude seu nome\t{9BE27F}$25,000\n{FFFFFF}Limpar Registro Criminal\t{9BE27F}Extra $25,000{FFFFFF}");
- strcat(gstr, "\n\nTodas as alterações são confirmadas por um administrador e podem ser recusadas se qualquer Administrador considerar que a alteração não é adequada.");
- Dialog_Show(playerid, NamechangeRequest1, DIALOG_STYLE_MSGBOX, "{FFEEA7}Mudar Nome", gstr, "Próximo", "Cancelar");
- return true;
- }
- CMD:cancelartrocadenome(playerid, params[])//cancelartrocadenome
- {
- if(!Logged{playerid}) return true;
- if(WantsNameChange[playerid][0] == 0) return SysMsg(playerid,"Você não tem nenhum pedido para cancelar");
- SendClientMessage(playerid, COLOR_DARKBLUE, "Você cancelou seu pedido de mudança de nome.");
- format(gstr, sizeof(gstr),"* %s cancelou seu nome mudado para %s.", NameEx(playerid), NameChange[playerid]);
- AdminBroadcast(gstr, 1);
- format(gstr, sizeof(gstr), "Mudança de nome cancelada para %s", NameChange[playerid]);
- AdminLog(playerid, SQLID[playerid], GetName(playerid), gstr);
- WantsNameChange[playerid][1] = 0;
- WantsNameChange[playerid][0] = 0;
- NameChange[playerid][0] = EOS;
- return true;
- }
- CMD:ultimavezonline(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(isnull(params)) return SysMsg(playerid,"Use: /ultimavezonline [Nome_Sobrenome]");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT LastLogin, LastLogout, Name FROM players WHERE Name = '%e'", params);
- mysql_pquery(conn, mquery, "LastOnlineCheck", "d", playerid);
- return true;
- }
- CMD:billcosby(playerid)
- {
- if(!Logged{playerid}) return true;
- GameTextForPlayer(playerid, "~w~zip ~r~zop ~b~zoopity ~y~bop!", 5000, 11);
- return true;
- }
- CMD:bazinga(playerid)
- {
- if(!Logged{playerid}) return true;
- PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/bazinga.mp3");
- return true;
- }
- CMD:valero(playerid)
- {
- if(!Logged{playerid}) return true;
- PlayAudioStreamForPlayer(playerid, "http://redcountyrp.com/audio/valero.mp3");
- return true;
- }
- CMD:boombox(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsBoomBanned[playerid] == 1) return SysMsg(playerid, "Você esta banido de usar boombox");
- if(GetPlayerVirtualWorld(playerid) != 0 || GetPlayerInterior(playerid) != 0) return SysMsg(playerid, "Você só pode colocar uma boombox fora.");
- if(Inventory[playerid][Boombox] >= 1)
- {
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você precisa estar a pé para executar este comando.");
- new Float:pPos[4];
- GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
- pPos[3] = GetXYInFrontOfPlayer(playerid, pPos[0], pPos[1], 1.0);
- foreach(new bm: Player)
- {
- if(Boomboxes[bm][BoomOID] >= 1)
- {
- if(IsPlayerInRangeOfPoint(playerid, 80, Boomboxes[bm][BoomPos][0], Boomboxes[bm][BoomPos][1], Boomboxes[bm][BoomPos][2])) return SysMsg(playerid, "Você está muito perto de outra boombox, tente em outro lugar.");
- else if(Boomboxes[bm][BoomOID] == SQLID[playerid]) return SysMsg(playerid, "Você já tem uma boombox colocada, vá buscá-la.");
- }
- }
- if(Inventory[playerid][Boombox] == 1)
- {
- Boomboxes[playerid][BoomObj] = CreateDynamicObject(2102, pPos[0], pPos[1], pPos[2] - 1.0, 0, 0, pPos[3]);
- Boomboxes[playerid][BoomRange] = 15;
- }
- else if(Inventory[playerid][Boombox] == 2)
- {
- Boomboxes[playerid][BoomObj] = CreateDynamicObject(2226, pPos[0], pPos[1], pPos[2] - 1.0, 0, 0, pPos[3]);
- Boomboxes[playerid][BoomRange] = 38;
- }
- Boomboxes[playerid][BoomOID] = SQLID[playerid];
- Boomboxes[playerid][BoomPos][0] = pPos[0];
- Boomboxes[playerid][BoomPos][1] = pPos[1];
- Boomboxes[playerid][BoomPos][2] = pPos[2];
- Boomboxes[playerid][BoomPos][3] = pPos[3];
- Boomboxes[playerid][BoomStation][0] = 0;
- Boomboxes[playerid][BoomIsPlaying] = false;
- Boomboxes[playerid][BoomType] = Inventory[playerid][Boombox];
- Inventory[playerid][Boombox] = 0;
- OnePlayAnim(playerid,"BOMBER","BOM_Plant_Crouch_In", 4.0, 0, 0, 0, 0, 0);
- Boomboxes[playerid][BoomArea] = CreateDynamicSphere(Boomboxes[playerid][BoomPos][0], Boomboxes[playerid][BoomPos][1], Boomboxes[playerid][BoomPos][2], Boomboxes[playerid][BoomRange], 0);
- format(gstr, sizeof(gstr), "* %s coloca uma boombox no chão. *", NameRP(playerid));
- SetPlayerChatBubble(playerid, gstr, COLOR_EMOTE, 20, 7000);
- SendClientMessage(playerid, COLOR_YELLOW, "Você colocou uma boombox no chão, use /boombox para usar o boombox.");
- Dialog_Show(playerid, BoomboxMenu, DIALOG_STYLE_LIST, "Boombox Menu", "Tocar Nova\n \nParar\nPegar", "Selecionar", "Fechar");
- }
- else if(IsPlayerInRangeOfPoint(playerid, 3.0, Boomboxes[playerid][BoomPos][0], Boomboxes[playerid][BoomPos][1], Boomboxes[playerid][BoomPos][2]))
- {
- if(strlen(Boomboxes[playerid][BoomStation]) >= 6) Dialog_Show(playerid, BoomboxMenu, DIALOG_STYLE_LIST, "Boombox Menu", "Toca uma nova estação\nToca Estação anterios\nParar\nPegar", "Selecionar", "Fechar");
- else Dialog_Show(playerid, BoomboxMenu, DIALOG_STYLE_LIST, "Boombox Menu", "Tocar uma estação\n \nParar\nPegar", "Selecionar", "Fechar");
- }
- else return SysMsg(playerid, "Você não tem boombox.");
- return true;
- }
- CMD:fogueiraid(playerid)//fogueiraid
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid, AUTHMSG);
- new Float:x, Float:y, Float:z;
- foreach(new i: Player)
- {
- if(CampfirePlaced[i] != INVALID_OBJECT_ID)
- {
- GetDynamicObjectPos(CampfirePlaced[i], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 10.0, x, y, z))
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Dono da Fogueira: %s (ID %i)", NameEx(i), i);
- return true;
- }
- }
- }
- SysMsg(playerid, "Não foi possível encontrar fogueiras perto de você.");
- return true;
- }
- CMD:removerfogueira(playerid, params[])//removerfogueira
- {
- if(!Logged{playerid}) return true;
- if(!IsPlayerAdminLevelOK(playerid, 1)) return SysMsg(playerid, AUTHMSG);
- new playa = -1;
- if(sscanf(params, "u", playa)) return SysMsg(playerid, "Use: /removerfogueira [playerID ou nome]");
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(CampfirePlaced[playa] == INVALID_OBJECT_ID) return SysMsg(playerid, "Este jogador não colocou uma fogueira.");
- DestroyDynamicObjectEx(CampfirePlaced[playa], "CampfirePlaced[playa]");
- CampfirePlaced[playa] = INVALID_OBJECT_ID;
- SendClientMessageF(playerid, COLOR_RED, "Você removeu a fogueira de %s.", NameEx(playa));
- SendClientMessageF(playa, COLOR_RED, "Admin %s removeu sua fogueira.", NameEx(playerid));
- return true;
- }
- CMD:fogueira(playerid)//fogueira
- {
- if(!Logged{playerid}) return true;
- if(Inventory[playerid][Logs] == 0) return SysMsg(playerid, "Você não tem madeiras.");
- if(IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Você não pode usar este comando em veiculos.");
- if(CampfirePlaced[playerid] == INVALID_OBJECT_ID)
- {
- if(GetPlayerInterior(playerid) != 0 && GetPlayerVirtualWorld(playerid) != 0) return SysMsg(playerid, "Você só pode criar fogueiras ao ar livre.");
- new Float:x, Float:y, Float:z;
- foreach(new i: Player)
- {
- if(CampfirePlaced[i] != INVALID_OBJECT_ID)
- {
- GetDynamicObjectPos(CampfirePlaced[i], x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 20.0, x, y, z)) return SysMsg(playerid, "Você está muito perto de uma fogueira separada.");
- }
- }
- new Float:a;
- GetPlayerPos(playerid, x, y, z);
- a = GetXYInFrontOfPlayer(playerid, x, y, 1.0);
- CampfirePlaced[playerid] = CreateDynamicObject(19632, x, y, z - 1.0, 0, 0, a);
- OnePlayAnim(playerid, "CARRY", "putdwn", 4,0,0,0,0,0);
- SetPlayerChatBubble(playerid, "* Coloca alguns pequenos troncos no chão, ordenando-os em uma pilha limpa antes de acendê-los em chamas. *", COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- else
- {
- new Float:x, Float:y, Float:z;
- GetDynamicObjectPos(CampfirePlaced[playerid], x, y, z);
- if(!IsPlayerInRangeOfPoint(playerid, 10.0, x, y, z)) return SysMsg(playerid, "Você não está perto da sua fogueira.");
- DestroyDynamicObjectEx(CampfirePlaced[playerid], "CampfirePlaced[playerid] 0");
- CampfirePlaced[playerid] = INVALID_OBJECT_ID;
- OnePlayAnim(playerid, "CARRY", "liftup", 4,0,0,0,0,0);
- SetPlayerChatBubble(playerid, "* Chega ao chão e apaga sua fogueira antes de pegá-la. *", COLOR_EMOTE, 15.0, 6000);
- return true;
- }
- }
- CMD:responder(playerid, params[])//responder
- {
- if(!Logged{playerid}) return SysMsg(playerid,"Você deve estar logado para responder.");
- if(MathsStarted == 0) return SysMsg(playerid,"Não há dúvida de responder.");
- if(isnull(params)) return SysMsg(playerid,"Use: /responder [Minha questão]");
- if(!IsNumeric(params)) return SysMsg(playerid,"Sua resposta deve ser um número.");
- new MyAnswer = strval(params);
- if(MyAnswer == MathsAnswer)
- {
- GivePlayerCash(playerid, 1000);
- format(gstr, sizeof(gstr), "%s foi o primeiro a responder corretamente e ganhou $1000. A resposta era %i.", NameEx(playerid), MathsAnswer);
- SendClientMessageToAllLogged(COLOR_LIGHTRED, gstr);
- MathsStarted = 0;
- MathsAnswer = 0;
- }
- else return SysMsg(playerid,"Essa resposta está errada.");
- return true;
- }
- CMD:fecharporta(playerid, params[])//fecharporta
- {
- if(IsInHouseID[playerid] == -1) return SysMsg(playerid, "Você deve estar em uma casa para usar esse comando.");
- if(IsHouseOwner(playerid, IsInHouseID[playerid]) || IsHouseGuestSQL(playerid) == HouseData[IsInHouseID[playerid]][HouseSQLID])
- {
- new Float:pos[3], h = IsInHouseID[playerid];
- for(new x = 0; x < MAX_HFURNITURE; x++)
- {
- if(IsValidDoorObject(HouseData[h][FurnModel][x]))
- {
- GetDynamicObjectPos(HouseData[h][FurnObject][x], pos[0], pos[1], pos[2]);
- if(IsPlayerInRangeOfPoint(playerid, 2.0, pos[0], pos[1], pos[2]))
- {
- HouseData[h][DoorLocked][x] = !HouseData[h][DoorLocked][x];
- if(HouseData[h][DoorLocked][x]) SysMsg(playerid, "Você fechou a porta.");
- else SysMsg(playerid, "Você abriu a porta.");
- mysql_pqueryf(conn, "UPDATE hfurniture SET Locked = %i WHERE id = %i", HouseData[h][DoorLocked][x], HouseData[h][FurnSQLID][x]);
- return true;
- }
- }
- }
- }
- else SysMsg(playerid, "Você não pode fechar esta porta.");
- return true;
- }
- CMD:trancar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInHouseID[playerid] != -1)
- {
- new h = IsInHouseID[playerid];
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid] || IsHouseGuestSQL(playerid) == HouseData[h][HouseSQLID])
- {
- if(HouseData[h][HouseLocked] == 1)
- {
- HouseData[h][HouseLocked] = 0;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "HouseLocked", HouseData[h][HouseLocked], "houses");
- format(sgstr, sizeof(sgstr),"* %s unlocks the door of %s. *",NameRP(playerid),HouseData[h][HouseDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid,COLOR_WHITE, "You have {4BB74C}unlocked{FFFFFF} {BCDCBC}%s{FFFFFF}, anybody may enter this residence until it is locked again.",HouseData[h][HouseDescription]);
- ShowInfoText(playerid, "~Y~House Unlocked!", 3000);
- return true;
- }
- else
- {
- HouseData[h][HouseLocked] = 1;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "HouseLocked", HouseData[h][HouseLocked], "houses");
- format(sgstr, sizeof(sgstr),"* %s locks the door of %s. *",NameRP(playerid),HouseData[h][HouseDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid,COLOR_WHITE, "You have {8B0000}locked{FFFFFF} the doors of {BCDCBC}%s.",HouseData[h][HouseDescription]);
- ShowInfoText(playerid, "~Y~House Locked!", 3000);
- return true;
- }
- }
- }
- else
- {
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid] || IsHouseGuestSQL(playerid) == HouseData[h][HouseSQLID])
- {
- if(HouseData[h][HouseLocked] == 1)
- {
- HouseData[h][HouseLocked] = 0;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "HouseLocked", HouseData[h][HouseLocked], "houses");
- format(sgstr, sizeof(sgstr),"* %s unlocks the door of %s. *",NameRP(playerid),HouseData[h][HouseDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid,COLOR_WHITE, "You have {4BB74C}unlocked{FFFFFF} {BCDCBC}%s{FFFFFF}, anybody may enter this residence until it is locked again.",HouseData[h][HouseDescription]);
- ShowInfoText(playerid, "~Y~House Unlocked!", 3000);
- return true;
- }
- else
- {
- HouseData[h][HouseLocked] = 1;
- MySQLUpdateInt(HouseData[h][HouseSQLID], "HouseLocked", HouseData[h][HouseLocked], "houses");
- format(sgstr, sizeof(sgstr),"* %s locks the door of %s. *",NameRP(playerid),HouseData[h][HouseDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid,COLOR_WHITE, "You have {8B0000}locked{FFFFFF} the doors of {BCDCBC}%s.",HouseData[h][HouseDescription]);
- ShowInfoText(playerid, "~Y~House Locked!", 3000);
- return true;
- }
- }
- else return SysMsg(playerid, "You don't own or live in this house.");
- }
- }
- }
- if(IsInBizzID[playerid] >= 1)
- {
- new bizz = IsInBizzID[playerid];
- if(BizzData[bizz][BizzOwnerSQLID] == SQLID[playerid] || IsBizzMod(playerid, bizz))
- {
- if(BizzData[bizz][BizzType] == BIZZ_TYPE_STATIC && BizzData[bizz][IsSpecial] == 0) return SysMsg(playerid,"This business cannot be entered.");
- if(BizzData[bizz][BizzLocked])
- {
- BizzData[bizz][BizzLocked] = false;
- MySQLUpdateInt(BizzData[IsInBizzID[playerid]][BizzSQLID], "Locked", BizzData[bizz][BizzLocked], "bizz");
- SendClientMessageF(playerid,COLOR_WHITE, "You have {4BB74C}unlocked{FFFFFF} {BCDCBC}%s.",BizzData[bizz][BizzDescription]);
- format(sgstr, sizeof(sgstr),"* %s unlocks the door of %s. *",NameRP(playerid),BizzData[bizz][BizzDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- BizzData[bizz][BizzLocked] = true;
- MySQLUpdateInt(BizzData[bizz][BizzSQLID], "Locked", BizzData[bizz][BizzLocked], "bizz");
- SendClientMessageF(playerid,COLOR_WHITE, "You have {8B0000}locked{FFFFFF} {BCDCBC}%s.",BizzData[bizz][BizzDescription]);
- format(sgstr, sizeof(sgstr),"* %s locks the door of %s. *",NameRP(playerid),BizzData[bizz][BizzDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- }
- else
- {
- for(new bz = 0; bz < MAX_BIZZ; bz++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.5, BizzData[bz][oPosX], BizzData[bz][oPosY], BizzData[bz][oPosZ]))
- {
- for(new b = 0; b < MAX_BIZZ_PER_PLAYER; b++)
- {
- if(PlayerBizzID[playerid][b] == bz || IsBizzMod(playerid, bz))
- {
- if(BizzData[bz][BizzType] == BIZZ_TYPE_STATIC && BizzData[bz][IsSpecial] == 0) return SysMsg(playerid,"This business cannot be entered.");
- if(BizzData[bz][BizzLocked])
- {
- BizzData[bz][BizzLocked] = false;
- MySQLUpdateInt(BizzData[bz][BizzSQLID], "Locked", BizzData[bz][BizzLocked], "bizz");
- SendClientMessageF(playerid,COLOR_WHITE, "You have {4BB74C}unlocked{FFFFFF} {BCDCBC}%s.",BizzData[bz][BizzDescription]);
- format(sgstr, sizeof(sgstr),"* %s unlocks the door of %s. *",NameRP(playerid),BizzData[bz][BizzDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- BizzData[bz][BizzLocked] = true;
- MySQLUpdateInt(BizzData[bz][BizzSQLID], "Locked", BizzData[bz][BizzLocked], "bizz");
- SendClientMessageF(playerid,COLOR_WHITE, "You have {8B0000}locked{FFFFFF} {BCDCBC}%s.",BizzData[bz][BizzDescription]);
- format(sgstr, sizeof(sgstr),"* %s locks the door of %s. *",NameRP(playerid),BizzData[bz][BizzDescription]);
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- }
- }
- }
- }
- if(IsPlayerInAnyVehicle(playerid))
- {
- new veh = GetPlayerVehicleID(playerid);
- if(Locked{veh})
- {
- if(IsOwnedCar(veh))
- {
- if(VehicleData[veh][VehicleOwnerSQLID] == SQLID[playerid] || VehicleBorrowKey[playerid] != 0 && VehicleBorrowKey[playerid] == VehicleData[veh][VehSQLID])
- {
- Locked{veh} = false;
- ToggleVehicleLock(VehicleData[veh][IdVehicle], false);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- MySQLUpdateInt(VehicleData[veh][VehSQLID], "IsLocked", 0, "vehicles");
- ShowInfoText(playerid, "~B~Doors Unlocked!", 3000);
- SendClientMessage(playerid, COLOR_GREEN, "> Vehicle Unlocked.");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to unlock their %s. *",NameRP(playerid),GetVehicleName(veh));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else return SysMsg(playerid, "You do not have keys for this vehicle.");
- }
- else if(IsRentalCar(veh))
- {
- if(RentalCar[playerid] != veh) return SysMsg(playerid, "You do not have the keys to this rental vehicle.");
- Locked{veh} = false;
- ToggleVehicleLock(RentalData[veh][CarID], false);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- ShowInfoText(playerid, "~B~Doors Unlocked!", 3000);
- SendClientMessage(playerid, COLOR_GREEN, "> Vehicle Unlocked.");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to unlock their %s. *",NameRP(playerid),GetVehicleName(veh));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else if(IsFactionVehicle(veh))
- {
- new faction = IsFactionVehicle(veh);
- if(Faction[playerid] != faction && !IsPlayerAdmin(playerid)) return SysMsg(playerid,"You cannot edit this faction vehicle.");
- if(FactionRank[playerid] < FVehicleData[veh][FVMinRank]) return SysMsg(playerid, "You are not the correct rank to edit this faction vehicle.");
- ToggleVehicleLock(FVehicleData[veh][FactionVehID], false);
- Locked{veh} = false;
- SendClientMessage(playerid, COLOR_WHITE, "Faction vehicle has been unlocked.");
- ShowInfoText(playerid,"~B~Doors Unlocked!",3000);
- MySQLUpdateInt(FVehicleData[veh][FVSQLID], "Locked", 0, "fveh");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to unlock their %s. *",NameRP(playerid),GetVehicleName(FVehicleData[veh][FactionVehID]));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- else
- {
- if(IsOwnedCar(veh))
- {
- if(VehicleData[veh][VehicleOwnerSQLID] == SQLID[playerid] || VehicleBorrowKey[playerid] != 0 && VehicleBorrowKey[playerid] == VehicleData[veh][VehSQLID])
- {
- Locked{veh} = true;
- ToggleVehicleLock(veh, true);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- MySQLUpdateInt(VehicleData[veh][VehSQLID], "IsLocked", 1, "vehicles");
- ShowInfoText(playerid, "~B~Doors Locked!", 3000);
- SendClientMessage(playerid, COLOR_GREEN, "> Vehicle Locked.");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to lock their %s. *",NameRP(playerid),GetVehicleName(veh));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else return SysMsg(playerid, "You do not have the keys to this vehicle.");
- }
- else if(IsRentalCar(veh))
- {
- if(RentalCar[playerid] != veh) return SysMsg(playerid, "You do not have the keys to this rental vehicle.");
- Locked{veh} = true;
- ToggleVehicleLock(RentalData[veh][CarID], true);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- ShowInfoText(playerid, "~B~Doors Locked!", 3000);
- SendClientMessage(playerid, COLOR_GREEN, "> Vehicle Locked.");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to lock their %s. *",NameRP(playerid),GetVehicleName(veh));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else if(IsFactionVehicle(veh))
- {
- new faction = IsFactionVehicle(veh);
- if(Faction[playerid] != faction && !IsPlayerAdmin(playerid)) return SysMsg(playerid, "You do not have the keys to this vehicle.");
- if(FactionRank[playerid] < FVehicleData[veh][FVMinRank]) return SysMsg(playerid, "You are not the correct rank to edit this faction vehicle.");
- ToggleVehicleLock(FVehicleData[veh][FactionVehID], true);
- Locked{veh} = true;
- MySQLUpdateInt(FVehicleData[veh][FVSQLID], "Locked", 1, "fveh");
- SendClientMessage(playerid, COLOR_WHITE, "Faction vehicle has been locked.");
- ShowInfoText(playerid, "~B~Doors Locked!", 3000);
- format(sgstr, sizeof(sgstr),"* %s pushes a button to lock their %s. *",NameRP(playerid),GetVehicleName(veh));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- }
- else
- {
- new v = GetClosestVehicle(playerid);
- new Float:vPos[3];
- GetVehiclePos(v, vPos[0], vPos[1], vPos[2]);
- if(IsPlayerInRangeOfPoint(playerid, 10.0, vPos[0], vPos[1], vPos[2]))
- {
- if(IsOwnedCar(v))
- {
- if(VehicleData[v][VehicleOwnerSQLID] == SQLID[playerid] || VehicleBorrowKey[playerid] != 0 && VehicleBorrowKey[playerid] == VehicleData[v][VehSQLID] || WindowState{v} == WINDOWS_OPEN && VehicleHasWindows(v))
- {
- if(Locked{v})
- {
- Locked{v} = false;
- ToggleVehicleLock(v, 0);
- FlashVehicleLights(v);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- MySQLUpdateInt(VehicleData[v][VehSQLID], "IsLocked", 0, "vehicles");
- ShowInfoText(playerid,"~B~Doors Unlocked!",3000);
- if(WindowState{v} == WINDOWS_OPEN && VehicleHasWindows(v)) format(sgstr, sizeof(sgstr),"* %s reaches inside of the %s and unlocks it. *",NameRP(playerid),GetVehicleName(v));
- else format(sgstr, sizeof(sgstr),"* %s pushes a button to unlock their %s. *",NameRP(playerid),GetVehicleName(v));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- Locked{v} = true;
- ToggleVehicleLock(v, 1);
- FlashVehicleLights(v);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- MySQLUpdateInt(VehicleData[v][VehSQLID], "IsLocked", 1, "vehicles");
- ShowInfoText(playerid,"~B~Doors Locked!",3000);
- if(WindowState{v} == WINDOWS_OPEN && VehicleHasWindows(v)) format(sgstr, sizeof(sgstr),"* %s reaches inside of the %s and locks it. *",NameRP(playerid),GetVehicleName(v));
- else format(sgstr, sizeof(sgstr),"* %s pushes a button to lock their %s. *",NameRP(playerid),GetVehicleName(v));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- else return SysMsg(playerid, "You do not have keys for this vehicle.");
- }
- else if(IsRentalCar(v))
- {
- if(RentalCar[playerid] != v) return SysMsg(playerid, "You do not have the keys to this rental vehicle.");
- if(Locked{v})
- {
- Locked{v} = false;
- ToggleVehicleLock(RentalData[v][CarID], false);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- FlashVehicleLights(v);
- ShowInfoText(playerid,"~B~Doors Unlocked!",3000);
- SendClientMessage(playerid, COLOR_GREEN, "> Vehicle Unlocked.");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to unlock their %s. *",NameRP(playerid),GetVehicleName(v));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- Locked{v} = true;
- ToggleVehicleLock(RentalData[v][CarID], true);
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- FlashVehicleLights(v);
- ShowInfoText(playerid,"~B~Doors Locked!",3000);
- SendClientMessage(playerid, COLOR_GREEN, "> Vehicle Locked.");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to lock their %s. *",NameRP(playerid),GetVehicleName(v));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- else if(IsFactionCar(v))
- {
- new fveh = IsFactionVehicle(v);
- if(Faction[playerid] != fveh && !IsPlayerAdmin(playerid)) return SysMsg(playerid, "You do not have the keys to this vehicle.");
- if(FactionRank[playerid] < FVehicleData[v][FVMinRank]) return SysMsg(playerid, "You cannot edit this faction vehicle.");
- if(Locked{v})
- {
- ToggleVehicleLock(FVehicleData[v][FactionVehID], false);
- Locked{FVehicleData[v][FactionVehID]} = false;
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- FlashVehicleLights(v);
- SendClientMessage(playerid, COLOR_WHITE, "Faction vehicle has been unlocked.");
- ShowInfoText(playerid,"~B~Doors Unlocked!",3000);
- MySQLUpdateInt(FVehicleData[v][FVSQLID], "Locked", 0, "fveh");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to unlock their %s. *",NameRP(playerid),GetVehicleName(FVehicleData[v][FactionVehID]));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- ToggleVehicleLock(FVehicleData[v][FactionVehID], true);
- Locked{FVehicleData[v][FactionVehID]} = true;
- PlayerPlayNearbySound(playerid, SOUND_LOCK_CAR_DOOR);
- FlashVehicleLights(v);
- SendClientMessage(playerid, COLOR_WHITE, "Faction vehicle has been locked.");
- ShowInfoText(playerid,"~B~Doors Locked!",3000);
- MySQLUpdateInt(FVehicleData[v][FVSQLID], "Locked", 1, "fveh");
- format(sgstr, sizeof(sgstr),"* %s pushes a button to lock their %s. *",NameRP(playerid),GetVehicleName(FVehicleData[v][FactionVehID]));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- }
- }
- if(GetPlayerInterior(playerid) == 0)
- {
- new m = RentRoom[playerid];
- if(IsPlayerInRangeOfPoint(playerid, 3.0, MotelData[m][RoomX], MotelData[m][RoomY], MotelData[m][RoomZ]))
- {
- if(MotelData[m][RoomLocked] == 1)
- {
- MotelData[m][RoomLocked] = 0;
- MySQLUpdateInt(m, "RoomLocked", MotelData[m][RoomLocked], "motel");
- format(sgstr, sizeof(sgstr),"* %s unlocks the door of their Motel Room. *",NameRP(playerid));
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "You have {4BB74C}unlocked{FFFFFF} your Motel Room.");
- ShowInfoText(playerid,"~Y~Room Unlocked!",3000);
- return true;
- }
- else
- {
- MotelData[m][RoomLocked] = 1;
- MySQLUpdateInt(m, "RoomLocked", MotelData[m][RoomLocked], "motel");
- format(sgstr, sizeof(sgstr),"* %s locks the door of their Motel Room. *",NameRP(playerid));
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "You have {8B0000}locked{FFFFFF} your Motel Room.");
- ShowInfoText(playerid,"~Y~Room Locked!",3000);
- return true;
- }
- }
- }
- else
- {
- if(IsInMotel[playerid] >= 1)
- {
- new m = IsInMotel[playerid];
- if(MotelData[m][RoomOwner] == SQLID[playerid])
- {
- if(MotelData[m][RoomLocked] == 1)
- {
- MotelData[m][RoomLocked] = 0;
- MySQLUpdateInt(m, "RoomLocked", MotelData[m][RoomLocked], "motel");
- format(sgstr, sizeof(sgstr),"* %s unlocks the door of their Motel Room. *",NameRP(playerid));
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "You have {4BB74C}unlocked{FFFFFF} your Motel Room.");
- ShowInfoText(playerid,"~Y~Room Unlocked!",3000);
- return true;
- }
- else
- {
- MotelData[m][RoomLocked] = 1;
- MySQLUpdateInt(m, "RoomLocked", MotelData[m][RoomLocked], "motel");
- format(sgstr, sizeof(sgstr),"* %s locks the door of their Motel Room. *",NameRP(playerid));
- ProxDetector(15.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "You have {8B0000}locked{FFFFFF} your Motel Room.");
- ShowInfoText(playerid,"~Y~Room Locked!",3000);
- return true;
- }
- }
- return SysMsg(playerid, "You are not renting this room.");
- }
- }
- if(IsInPrison(playerid))
- {
- if(Faction[playerid] == FACTION_COP || IsPlayerAdmin(playerid))
- {
- for(new w = 0; w < sizeof(PrisonDoors); w++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.5, PrisonDoors[w][0], PrisonDoors[w][1], PrisonDoors[w][2]))
- {
- if(PrisonDoorsLock[w] == 1)
- {
- format(sgstr, sizeof(sgstr),"* %s takes a set of keys and uses one to unlock the door. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "This door has now been {4BB74C}unlocked{FFFFFF}.");
- PrisonDoorsLock[w] = 0;
- }
- else
- {
- format(sgstr, sizeof(sgstr),"* %s takes a set of keys and uses one to lock the door. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "This door has now been {8B0000}locked{FFFFFF}.");
- PrisonDoorsLock[w] = 1;
- }
- return true;
- }
- if(IsPlayerInRangeOfPoint(playerid, 1.5, PrisonDoors[w][4], PrisonDoors[w][5], PrisonDoors[w][6]))
- {
- if(PrisonDoorsLock[w] == 1)
- {
- format(sgstr, sizeof(sgstr),"* %s takes a set of keys and uses one to unlock the door. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "This door has now been {4BB74C}unlocked{FFFFFF}.");
- PrisonDoorsLock[w] = 0;
- }
- else
- {
- format(sgstr, sizeof(sgstr),"* %s takes a set of keys and uses one to lock the door. *", NameRP(playerid));
- ProxDetector(20.0, playerid, sgstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_WHITE, "This door has now been {8B0000}locked{FFFFFF}.");
- PrisonDoorsLock[w] = 1;
- }
- return true;
- }
- }
- }
- }
- SysMsg(playerid, "You are not near anything that you can lock.");
- return true;
- }
- CMD:trancargarage(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInGarageID[playerid] != -1)
- {
- new g = IsInGarageID[playerid], h = GarageData[g][gHouseID];
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid] || IsHouseGuest(playerid) == h)
- {
- if(GarageData[g][GarageLocked] == 1)
- {
- GarageData[g][GarageLocked] = 0;
- MySQLUpdateInt(GarageData[g][gID], "Locked", GarageData[g][GarageLocked], "garages");
- SendClientMessageF(playerid,COLOR_WHITE, "Você {4BB74C}abriu{FFFFFF} sua garagem.", HouseData[h][HouseDescription]);
- format(gstr, sizeof(gstr),"* %s abre sua garagem. *",NameRP(playerid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- GarageData[g][GarageLocked] = 1;
- MySQLUpdateInt(GarageData[g][gID], "Locked", GarageData[g][GarageLocked], "garages");
- SendClientMessageF(playerid,COLOR_WHITE, "Você {8B0000}fechou{FFFFFF} sua garagem.", HouseData[h][HouseDescription]);
- format(gstr, sizeof(gstr),"* %s fecha sua garagem. *",NameRP(playerid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- else SysMsg(playerid, "Você não tem acesso a esta garagem.");
- }
- else
- {
- for(new g = 0; g < MAX_GARAGES; g++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, GarageData[g][oPosX], GarageData[g][oPosY], GarageData[g][oPosZ]))
- {
- new h = GarageData[g][gHouseID];
- if(HouseData[h][HouseOwnerSQLID] == SQLID[playerid] || IsHouseGuest(playerid) == h)
- {
- if(GarageData[g][GarageLocked] == 1)
- {
- GarageData[g][GarageLocked] = 0;
- MySQLUpdateInt(GarageData[g][gID], "Locked", GarageData[g][GarageLocked], "garages");
- SendClientMessageF(playerid,COLOR_WHITE, "Você {4BB74C}abriu{FFFFFF} sua garagem.", HouseData[h][HouseDescription]);//%s
- format(gstr, sizeof(gstr),"* %s abre sua garagem. *",NameRP(playerid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else
- {
- GarageData[g][GarageLocked] = 1;
- MySQLUpdateInt(GarageData[g][gID], "Locked", GarageData[g][GarageLocked], "garages");
- SendClientMessageF(playerid,COLOR_WHITE, "Você {8B0000}fechou{FFFFFF} sua garagem.", HouseData[h][HouseDescription]);//%s
- format(gstr, sizeof(gstr),"* %s trava sua garagem. *",NameRP(playerid));
- ProxDetector(15.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- }
- else SysMsg(playerid, "Você não pode acessar esta garagem.");
- }
- }
- }
- return true;
- }
- CMD:conquistas(playerid, params[])
- {
- Dialog_Show(playerid,AchievementMenu,DIALOG_STYLE_LIST,"Conquistas","Ver minhas conquistas\nVer outras conquistas\nMeu resumo","Ok","Fechar");
- return true;
- }
- CMD:svo(playerid, params[]) return cmd_setvisibleobjects(playerid, params);
- CMD:setvisibleobjects(playerid, params[])
- {
- if(isnull(params) || !IsNumeric(params)) return SysMsg(playerid, "Use: /setvisibleobjects [350-1000] *Esse comando alterará a quantidade máxima de objetos mapeados que serão transmitidos para o seu cliente.*");
- new objects = strval(params);
- if(objects > 1000) return SysMsg(playerid, "O limite de objeto não pode ser superior a 1,000.");
- if(objects < 350) return SysMsg(playerid, "O limite do objeto não pode ser inferior a 350.");
- if(objects == VisibleObjects[playerid]) return SysMsgF(playerid, "O limite de objeto já está %i.", objects);
- Streamer_SetVisibleItems(STREAMER_TYPE_OBJECT, objects, playerid);
- if(objects < VisibleObjects[playerid] && GetPlayerVirtualWorld(playerid) == 0 && GetPlayerInterior(playerid) == 0) Streamer_DestroyAllVisibleItems(playerid, STREAMER_TYPE_OBJECT);
- Streamer_UpdateEx(playerid, PlayerPosX(playerid), PlayerPosY(playerid), PlayerPosZ(playerid), GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid));
- VisibleObjects[playerid] = objects;
- mysql_pqueryf(conn, "UPDATE masters SET MaxVisibleObjects = %i WHERE id = %i", VisibleObjects[playerid], MasterAccount[playerid]);
- SysMsgF(playerid, "Você definiu o limite máximo de objeto visível para %i. Nota: Este limite será ignorado em interiores para garantir que todos os detalhes sejam carregados enquanto estiverem dentro.", VisibleObjects[playerid]);
- return true;
- }
- CMD:hotkeys(playerid)
- {
- if(!Logged{playerid}) return true;
- SendClientMessage(playerid, COLOR_WHITE, "{FFFF82}'~k~~CONVERSATION_YES~'{FFFFFF} pode ser usado como uma alternativa para {44C300}/entrar.");
- SendClientMessage(playerid, COLOR_WHITE, "{FFFF82}'~k~~CONVERSATION_NO~'{FFFFFF} pode ser usado como uma alternativa para {44C300}/fechar.");
- SendClientMessage(playerid, COLOR_WHITE, "{FFFF82}'~k~~SNEAK_ABOUT~'{FFFFFF} pode ser usado para descongelar o seu jogador ao entrar em edifícios.");
- return true;
- }
- CMD:cage(playerid, params[])//observar
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.0, 249.6434,-169.6998,1017.9922))
- {
- LillyCage{playerid} = !LillyCage{playerid};
- if(LillyCage{playerid}) SetPlayerPos(playerid, 248.8951,-167.8426,1018.3791);//in
- else SetPlayerPos(playerid, 249.6434,-169.6998,1017.9922); //out
- }
- return true;
- }
- CMD:roof(playerid, params[])//observar
- {
- if(!Logged{playerid}) return true;
- if(Faction[playerid] == FACTION_COP)
- {
- if(IsPlayerInRangeOfPoint(playerid,3.0,635.7831,-566.9708,1011.9344))
- {
- SetPlayerPos(playerid,621.417,-570.289,26.1432);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- SetTimerEx("UnFreezePlayer", 1000, 0, "d", playerid);
- TogglePlayerControllable(playerid, 0);
- }
- }
- if(IsPlayerInRangeOfPoint(playerid,3.0,243.210525, 66.328117, 1003.640625))
- {
- SetPlayerPos(playerid,94.300003, 1062.325683, 24.817752);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- SetTimerEx("UnFreezePlayer", 1000, 0, "d", playerid);
- TogglePlayerControllable(playerid, 0);
- }
- if(IsPlayerInRangeOfPoint(playerid, 3.0, 678.033081, 1814.505371, -5.632563))
- {
- TogglePlayerControllable(playerid, 0);
- Streamer_UpdateEx(playerid, 667.4, 1816.2, 10.2, 0, 0);
- SetPlayerPos(playerid,667.43804931641, 1816.2852783203, 10.272919654846);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- SetTimerEx("UnFreezePlayer", 1000, 0, "d", playerid);
- }
- return true;
- }
- CMD:entrar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new vid = GetPlayerVehicleID(playerid);
- if(vid == 0)
- {
- for(new in = 0; in < MAX_INTERIORS; in++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.5, Interiors[in][oPosX], Interiors[in][oPosY], Interiors[in][oPosZ]) && GetPlayerVirtualWorld(playerid) == Interiors[in][oVirtualWorld])
- {
- if(Interiors[in][IntFaction] > 0 && Interiors[in][IntFaction] != Faction[playerid] && !IsPlayerAdmin(playerid)) return SysMsg(playerid,"Você não pode entrar.");
- if(Interiors[in][IntFactionRank] > 0 && Interiors[in][IntFactionRank] > FactionRank[playerid] && !IsPlayerAdmin(playerid)) return SysMsg(playerid,"Seu rank na facção não é suficiente para entrar neste interior.");
- Teleport(playerid, Interiors[in][iPosX], Interiors[in][iPosY], Interiors[in][iPosZ], Interiors[in][iAngle], Interiors[in][iInteriorID], Interiors[in][iVirtualWorld]);
- new interiorText[100];
- format(interiorText, 100, "~W~");
- strcat(interiorText, Interiors[in][InteriorName]);
- strcat(interiorText, "~N~~R~Escreva /sair para sair do local");
- ShowInfoText(playerid, interiorText, 5000);
- if(Interiors[in][interiorID] == 9 || Interiors[in][interiorID] == 10 || Interiors[in][interiorID] == 11)
- SendClientMessage(playerid, COLOR_WHITE, "Regra: Faça roleplay quando recolher seu (Payday). Por favor, não corra dentro da prefeitura.");
- return true;
- }
- }
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, HouseData[h][oPosX],HouseData[h][oPosY],HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- if(HouseData[h][HouseLocked] == 1 && ADuty[playerid] != 1) return SysMsgF(playerid, "%s está trancada.",HouseData[h][HouseDescription]);
- if(strlen(HouseData[h][DoorNoteMessage]) > 1 && HouseData[h][HouseOwnerSQLID] == SQLID[playerid])
- {
- new noteMsg[200];
- format(noteMsg,200,"Mensagem: '%s'",HouseData[h][DoorNoteMessage]);
- ShowMessage(playerid, "Nota na porta", noteMsg, "Done");
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE houses SET DoorNote = '' WHERE id = %i", HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery);
- HouseData[h][DoorNoteMessage][0] = 0;
- }
- if(HouseData[h][InsideID] == 11) //custom interiors
- {
- Teleport(playerid, HouseData[h][intPosX], HouseData[h][intPosY], HouseData[h][intPosZ], 0.0, HouseData[h][HouseInterior], HouseData[h][HouseVW]);
- IsInHouseID[playerid] = h;
- GameTextForPlayer(playerid,"~N~~N~~N~~W~Escreva ~r~/sair ~w~para sair do local",5000,3);
- }
- else //default interiors
- {
- new x = HouseData[h][InsideID] - 1;
- Teleport(playerid, InsideIDs[x][InsideX], InsideIDs[x][InsideY], InsideIDs[x][InsideZ], InsideIDs[x][InsideAng], InsideIDs[x][InsideInt], HouseData[h][HouseVW]);
- IsInHouseID[playerid] = h;
- GameTextForPlayer(playerid,"~N~~N~~N~~W~Escreva ~r~/sair ~w~para sair do local",5000,3);
- }
- HouseData[h][HouseOccupants] ++;
- if(HouseData[h][HMusicPlaying] == 1) PlayAudioStreamForPlayerEx(playerid, HouseData[h][HMusic]);
- return true;
- }
- }
- for(new b = 0; b < MAX_BIZZ; b++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, BizzData[b][oPosX],BizzData[b][oPosY],BizzData[b][oPosZ]))
- {
- if(BizzData[b][BizzType] == BIZZ_TYPE_STATIC && BizzData[b][IsSpecial] == 0) return SysMsg(playerid,"Este negócio não pode ser inserido.");
- if(BizzData[b][BizzLocked] && ADuty[playerid] == 0) return SysMsgF(playerid, "[%s] A porta está trancada.", BizzData[b][BizzDescription]);
- if(BizzData[b][EnterFee] > 0 && (BizzData[b][BizzOwnerSQLID] > 0 && BizzData[b][BizzOwnerSQLID] != SQLID[playerid]))
- {
- new nopay = 0;
- //no enter fee for SAN employees at SAN building
- if(BizzData[b][BizzSQLID] == 19 && Faction[playerid] == FACTION_NEWS) nopay = 1;
- if(IsBizzMod(playerid, b)) nopay = 1;
- if(nopay == 0)
- {
- if(Cash[playerid] < BizzData[b][EnterFee]) return SysMsg(playerid,"Você não tem dinheiro suficiente para a taxa de entrada.");
- GivePlayerCash(playerid, -BizzData[b][EnterFee]);
- BizzData[b][BizzEarnings] += BizzData[b][EnterFee];
- MySQLUpdateInt(BizzData[b][BizzSQLID], "BizzEarnings", BizzData[b][BizzEarnings], "bizz");
- }
- }
- if(BizzData[b][BizzOwnerSQLID] > 0)
- {
- if(BizzData[b][BizzOwnerSQLID] == SQLID[playerid]) SendClientMessageF(playerid, COLOR_WHITE, "[%s] Você é o dono deste negócio. Para uso de comandos relacionados a negócios '/ajuda negocio'", BizzData[b][BizzDescription]);
- else if(BizzData[b][BizzOwnerSQLID] == -5) SendClientMessageF(playerid, COLOR_WHITE, "Bem vindo a %s, Propriedade da Silver Trading. Taxa de entrada: $%i", BizzData[b][BizzDescription], BizzData[b][EnterFee]);
- else SendClientMessageF(playerid, COLOR_WHITE, "Bem vindo a %s, Propriedade de %s. Taxa de entrada: $%i", BizzData[b][BizzDescription], GetSQLName(BizzData[b][BizzOwnerSQLID]), BizzData[b][EnterFee]);
- }
- else SendClientMessageF(playerid, COLOR_WHITE, "Bem-vindo a %s, este negócio não tem dono.", BizzData[b][BizzDescription]);
- if(BizzData[b][IsSpecial] == 1)
- {
- Teleport(playerid, BizzData[b][iPosX], BizzData[b][iPosY], BizzData[b][iPosZ], 0.0, BizzData[b][InteriorID], BizzData[b][BizzVW]);
- IsInBizzID[playerid] = b;
- }
- else
- {
- new x = BizzData[b][BizzType];
- Teleport(playerid, BInsideIDs[x][InsideX], BInsideIDs[x][InsideY], BInsideIDs[x][InsideZ], BInsideIDs[x][InsideAng], BInsideIDs[x][InsideInt], BizzData[b][BizzVW]);
- GameTextForPlayer(playerid, "~N~~N~~N~~W~Bem-vindo ao negócio~N~~R~escreva /sair para sair do local.", 5000, 3);
- IsInBizzID[playerid] = b;
- }
- BizzData[b][BizzOccupants] ++;
- if(BizzData[b][BMusicPlaying] == 1) PlayAudioStreamForPlayerEx(playerid, BizzData[b][BMusic]);
- return true;
- }
- }
- for(new i = 1; i < MAX_MOTELROOMS; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 0.75, MotelData[i][RoomX], MotelData[i][RoomY], MotelData[i][RoomZ]) && MotelData[i][RoomOwner] > 0)
- {
- if(MotelData[i][RoomLocked] == 1) return SysMsg(playerid, "Esta sala está trancada.");
- Teleport(playerid, -434.7513, -775.4567, 971.0526, 0.0, 11, 50000+i);
- IsInMotel[playerid] = i;
- /*switch(MotelData[i][MotelID])
- {
- case 1,4,5,6: // $100 rent
- {
- Teleport(playerid, 2282.726806, -1139.603515, 1050.898437, 0.0, 11, 50000+i);
- IsInMotel[playerid] = i;
- return true;
- }
- case 2,7: // $200 rent
- {
- Teleport(playerid, 2217.425781, -1076.156494, 1050.484375, 9.0, 1, 50000+i);
- IsInMotel[playerid] = i;
- return true;
- }
- case 3: // $500 rent
- {
- Teleport(playerid, 2233.775634, -1114.455688, 1050.882812, 0.0, 5, 50000+i);
- IsInMotel[playerid] = i;
- return true;
- }
- }*/
- }
- }
- }
- for(new g = 0; g < MAX_GARAGES; g++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, GarageData[g][oPosX], GarageData[g][oPosY], GarageData[g][oPosZ]))
- {
- if(GarageData[g][GarageLocked] == 1 && ADuty[playerid] != 1) return SysMsg(playerid, "Esta garagem está trancada.");
- if(GarageData[g][gType] == 1) //tiny 1 car garage
- {
- if(GarageCheck(g, 1) && IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Há atualmente um veículo que bloqueia a entrada da garagem.");
- if(vid >= 1)
- {
- SetVehiclePos(vid, 1449.0339, -2518.7883, 13.7018);
- SetVehicleZAngle(vid, 90.0);
- SetVehicleVirtualWorld(vid, GarageData[g][iVirtualWorld]);
- LinkVehicleToInterior(vid, 1);
- foreach(new p: Player)
- {
- if(GetPlayerVehicleID(p) == vid)
- {
- SetPlayerVirtualWorld(p, GarageData[g][iVirtualWorld]);
- SetPlayerInterior(p, 1);
- IsInGarageID[p] = g;
- }
- }
- return true;
- }
- else
- {
- Teleport(playerid, 1452.6891, -2516.3198, 13.5750, 90.0, 1, GarageData[g][iVirtualWorld]);
- IsInGarageID[playerid] = g;
- return true;
- }
- }
- if(GarageData[g][gType] == 2) //normal single car garage
- {
- if(GarageCheck(g, 1) && IsPlayerInAnyVehicle(playerid)) return SysMsg(playerid, "Há atualmente um veículo que bloqueia a entrada da garagem.");
- if(vid >= 1)
- {
- SetVehiclePos(vid, 1836.6912, -2440.2810, 13.7131);
- SetVehicleZAngle(vid, 90.0);
- SetVehicleVirtualWorld(vid, GarageData[g][iVirtualWorld]);
- LinkVehicleToInterior(vid, 1);
- foreach(new p: Player)
- {
- if(GetPlayerVehicleID(p) == vid)
- {
- SetPlayerVirtualWorld(p, GarageData[g][iVirtualWorld]);
- SetPlayerInterior(p, 1);
- IsInGarageID[p] = g;
- }
- }
- return true;
- }
- else
- {
- Teleport(playerid, 1840.1310, -2436.8567, 13.5859, 90.0, 1, GarageData[g][iVirtualWorld]);
- IsInGarageID[playerid] = g;
- return true;
- }
- }
- else if(GarageData[g][gType] == 3) //standard 2 car garage
- {
- if(vid >= 1)
- {
- new side[6];
- if(sscanf(params, "s[6]", side)) return SysMsg(playerid, "Use: /enter [Esquerda/Direita]");
- if(strcmp(side, "esquerda", true) == 0)
- {
- if(GarageCheck(g, 1, 0)) return SysMsg(playerid, "Há atualmente um veículo que bloqueia a entrada da garagem.");
- SetVehiclePos(vid, 2081.5933, -2479.1887, 13.7145);
- }
- else if(strcmp(side, "direita", true) == 0)
- {
- if(GarageCheck(g, 1, 1)) return SysMsg(playerid, "Há atualmente um veículo que bloqueia a entrada da garagem.");
- SetVehiclePos(vid, 2081.593, -2473.189, 13.92);
- }
- else return SysMsg(playerid, "Use: /entra [Esquerda/Direita]");
- SetVehicleZAngle(vid, 90.0);
- SetVehicleVirtualWorld(vid, GarageData[g][iVirtualWorld]);
- LinkVehicleToInterior(vid, 1);
- foreach(new p: Player)
- {
- if(GetPlayerVehicleID(p) == vid)
- {
- SetPlayerVirtualWorld(p, GarageData[g][iVirtualWorld]);
- IsInGarageID[p] = g;
- SetPlayerInterior(p, 1);
- }
- }
- return true;
- }
- else
- {
- Teleport(playerid, 2086.1670, -2476.5586, 13.5859, 90.0, 1, GarageData[g][iVirtualWorld]);
- SetPlayerVirtualWorld(playerid, GarageData[g][iVirtualWorld]);
- IsInGarageID[playerid] = g;
- return true;
- }
- }
- else if(GarageData[g][gType] == 4) //fancy 2 car garage
- {
- if(vid >= 1)
- {
- new side[6];
- if(sscanf(params, "s[6]", side)) return SysMsg(playerid, "Use: /entra [Esquerda/Direita]");
- if(strmatch("esquerda", side))
- {
- if(GarageCheck(g, 1, 0)) return SysMsg(playerid, "Há atualmente um veículo que bloqueia a entrada da garagem.");
- SetVehiclePos(vid, 1566.3131, -2562.6003, 13.7139);
- }
- else if(strmatch("dinheiro", side))
- {
- if(GarageCheck(g, 1, 1)) return SysMsg(playerid, "Há atualmente um veículo que bloqueia a entrada da garagem.");
- SetVehiclePos(vid, 1566.283, -2555.600, 13.296);
- }
- else return SysMsg(playerid, "Use: /entra [Esquerda/Direita]");
- SetVehicleZAngle(vid, 90.0);
- SetVehicleVirtualWorld(vid, GarageData[g][iVirtualWorld]);
- LinkVehicleToInterior(vid, 1);
- foreach(new p: Player)
- {
- if(GetPlayerVehicleID(p) == vid)
- {
- SetPlayerVirtualWorld(p, GarageData[g][iVirtualWorld]);
- IsInGarageID[p] = g;
- SetPlayerInterior(p, 1);
- }
- }
- return true;
- }
- else
- {
- Teleport(playerid, 1571.5144, -2567.9014, 13.5989, 90.0, 1, GarageData[g][iVirtualWorld]);
- SetPlayerVirtualWorld(playerid, GarageData[g][iVirtualWorld]);
- IsInGarageID[playerid] = g;
- return true;
- }
- }
- else if(GarageData[g][gType] == 5) //custom garage
- {
- if(vid >= 1)
- {
- SetVehiclePos(vid, GarageData[g][iPosX], GarageData[g][iPosY], GarageData[g][iPosZ]);
- SetVehicleVirtualWorld(vid, GarageData[g][iVirtualWorld]);
- LinkVehicleToInterior(vid, GarageData[g][InsideInt]);
- foreach(new p: Player)
- {
- if(GetPlayerVehicleID(p) == vid)
- {
- SetPlayerVirtualWorld(p, GarageData[g][iVirtualWorld]);
- if(GarageData[g][UseHouse]) IsInHouseID[p] = GarageData[g][gHouseID];
- else IsInGarageID[p] = g;
- SetPlayerInterior(p, GarageData[g][InsideInt]);
- }
- }
- return true;
- }
- else
- {
- Teleport(playerid, GarageData[g][iPosX], GarageData[g][iPosY], GarageData[g][iPosZ], GarageData[g][iAngle], 1, GarageData[g][iVirtualWorld]);
- if(GarageData[g][UseHouse]) IsInHouseID[playerid] = GarageData[g][gHouseID];
- else IsInGarageID[playerid] = g;
- SetPlayerInterior(playerid, GarageData[g][InsideInt]);
- return true;
- }
- }
- }
- }
- if(IsPlayerInRangeOfPoint(playerid, 5.0, -4118.1626, 1863.7806, -6.0066)) //pirate ship
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- SetPlayerPos(playerid, x, y, z + 20.0);
- TogglePlayerControllable(playerid, false);
- SetTimerEx("PutPlayerInShip", 500, 0, "i", playerid);
- return true;
- }
- new model = GetVehicleModel(vid);
- UnlockAchievement(playerid,12);
- if(model == 592 && vid > 0)
- {
- RemovePlayerFromVehicle(playerid);
- SetPlayerPos(playerid,315.747528,973.342773,1961.580932);
- SetPlayerFacingAngle(playerid,4.525218);
- SetPlayerInterior(playerid,9);
- return true;
- }
- // Aperture
- else if(IsPlayerInRangeOfPoint(playerid,2.5,281.6272,1821.7705,17.6406)) //Area51 Onto Runway
- {
- if(vid > 0)
- {
- SetVehiclePos(vid,291.2745,1821.3871,17.6406);
- SetVehicleZAngle(vid,265.0996);
- }
- else
- {
- SetPlayerPos(playerid,291.2745,1821.3871,17.6406);
- SetPlayerFacingAngle(playerid,265.0996);
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,2.5,291.2745,1821.3871,17.6406) && Faction[playerid] == FACTION_RESEARCH) //Area51 Off Runway
- {
- if(vid > 0)
- {
- SetVehiclePos(vid,281.6272,1821.7705,17.6406);
- SetVehicleZAngle(vid,265.0996);
- }
- else
- {
- SetPlayerPos(playerid,281.6272,1821.7705,17.6406);
- SetPlayerFacingAngle(playerid,265.0996);
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,10.0,135.2250,1952.6047,19.4092) && Faction[playerid] == FACTION_RESEARCH) //Area51 In base
- {
- if(vid > 0)
- {
- SetVehiclePos(vid,134.8420,1929.8167,19.2142);
- SetVehicleZAngle(vid,180.0);
- }
- }
- else if(IsPlayerInRangeOfPoint(playerid,10.0,134.8420,1929.8167,19.2142) && Faction[playerid] == FACTION_RESEARCH) //Area51 Out base
- {
- if(vid > 0)
- {
- SetVehiclePos(vid,135.2250,1952.6047,19.4092);
- SetVehicleZAngle(vid,0.0);
- return true;
- }
- }
- //Aperture Post
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -119.2304,1607.1378,18.1936) && Faction[playerid] == FACTION_RESEARCH)
- {
- SetPlayerPos(playerid,-121.0000,1607.1378,18.4500);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -107.9196,1607.6631,18.1957) && Faction[playerid] == FACTION_RESEARCH)
- {
- SetPlayerPos(playerid,-105.9196,1607.6631,18.4500);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,5.0, 974.4432,-1091.5729,24.2055)) //ST garage ENTER
- {
- if(Faction[playerid] != FACTION_PROP) return true;
- if(vid == 0)
- {
- SetPlayerPos(playerid,1484.3281,-2592.6111,13.6177);
- SetPlayerFacingAngle(playerid, 358.4381);
- SetPlayerInterior(playerid,187);
- SetPlayerVirtualWorldEx(playerid, 187);
- }
- else
- {
- SetVehiclePos(vid, 1481.2957,-2589.0603,13.6197);
- SetVehicleZAngle(vid, 360.0);
- LinkVehicleToInteriorEx(vid, 187);
- SetVehicleVirtualWorld(vid, 187);
- foreach(new v: Player)
- {
- if(Logged{v})
- {
- if(GetPlayerVehicleID(v) == vid)
- {
- SetPlayerVirtualWorldEx(v, 187);
- SetPlayerInterior(v, 187);
- }
- }
- }
- }
- ShowInfoText(playerid,"~W~ST garagem~N~~R~escreva /sair para voltar",5000);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 10.0, -63.7647, -1116.42, 1.078)) //rosmc garage enter
- {
- if(vid == 0) Teleport(playerid, -108.818, -1136.22, 1001.34, 90.0, 1, 3);
- else
- {
- SetVehiclePos(vid, -113.4797, -1137.5911, 1001.5186);
- SetVehicleZAngle(vid, 90.0);
- LinkVehicleToInteriorEx(vid, 1);
- SetVehicleVirtualWorld(vid, 3);
- foreach(new v: Player)
- {
- if(Logged{v})
- {
- if(GetPlayerVehicleID(v) == vid)
- {
- SetPlayerVirtualWorldEx(v, 3);
- SetPlayerInterior(v, 1);
- }
- }
- }
- }
- ShowInfoText(playerid,"~W~RosMC garage~N~~R~escreva /sair para voltar",5000);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,5.0, 623.303771, -598.885620, 17.077930)) //dpd garage ENTER
- {
- if(!IsCop(playerid)) return SysMsg(playerid, "Você deve ser um policial se quiser entrar nesta garagem.");
- if(vid == 0)
- {
- SetPlayerPos(playerid,2300.9836,2498.7104,3.2734);
- SetPlayerFacingAngle(playerid, 180.0);
- SetPlayerVirtualWorldEx(playerid, 911);
- }
- else
- {
- SetVehiclePos(vid, 2300.9836,2498.7104,3.2734);
- SetVehicleZAngle(vid, 180.0);
- SetVehicleVirtualWorld(vid, 911);
- foreach(new v: Player)
- {
- if(Logged{v})
- {
- if(GetPlayerVehicleID(v) == vid)
- {
- SetPlayerVirtualWorldEx(v, 911);
- }
- }
- }
- }
- ShowInfoText(playerid,"~W~DPD garagem~N~~R~escreva /sair para voltar",5000);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,5.0, 1198.8041,254.2202,19.5547)) //SAN garage ENTER
- {
- if(Faction[playerid] != FACTION_NEWS) return SysMsg(playerid,"Você não pode entrar nesta garagem.");
- if(vid == 0)
- {
- SetPlayerPos(playerid, 2040.6063, -2587.3342, 13.6177);
- SetPlayerFacingAngle(playerid, 90.0);
- SetPlayerInterior(playerid,6);
- SetPlayerVirtualWorldEx(playerid, 558822);
- }
- else
- {
- SetVehiclePos(vid, 2036.1995, -2593.0525, 13.6216);
- SetVehicleZAngle(vid, 90.0);
- LinkVehicleToInteriorEx(vid, 6);
- SetVehicleVirtualWorld(vid, 558822);
- foreach(new v: Player)
- {
- if(Logged{v})
- {
- if(GetPlayerVehicleID(v) == vid)
- {
- SetPlayerVirtualWorldEx(v, 558822);
- SetPlayerInterior(v, 6);
- }
- }
- }
- }
- ShowInfoText(playerid,"~W~SAN garagem~N~~R~escreva /sair para voltar",5000);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 844.2215, -598.8593, 18.4219)) //swat garage ENTER
- {
- if(Faction[playerid] != FACTION_COP) return SysMsg(playerid,"Você não pode entrar nesta garagem.");
- if(vid == 0)
- {
- SetPlayerPos(playerid, 2040.6063, -2587.3342, 13.6177);
- SetPlayerFacingAngle(playerid, 90.0);
- SetPlayerInterior(playerid,6);
- SetPlayerVirtualWorldEx(playerid, 558821);
- }
- else
- {
- SetVehiclePos(vid, 2036.1995, -2593.0525, 13.6216);
- SetVehicleZAngle(vid, 90.0);
- LinkVehicleToInteriorEx(vid, 6);
- SetVehicleVirtualWorld(vid, 558821);
- foreach(new v: Player)
- {
- if(Logged{v})
- {
- if(GetPlayerVehicleID(v) == vid)
- {
- SetPlayerVirtualWorldEx(v, 558821);
- SetPlayerInterior(v, 6);
- }
- }
- }
- }
- ShowInfoText(playerid,"~W~Swat garagem~N~~R~escreva /sair para voltar",5000);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 1239.3077, 180.7602, 19.9204)) //info center left entrance
- {
- if(vid == 0) return SysMsg(playerid, "Você deve estar em um veículo para usar esta entrada.");
- if(!IsRentalCar(vid)) return SysMsg(playerid, "O veículo deve ser um carro alugado.");
- SetVehiclePos(vid, 1245.4321, 170.6587, 2086.3684);
- SetVehicleZAngle(vid, 180.0);
- LinkVehicleToInteriorEx(vid, 3);
- SetVehicleVirtualWorld(vid, 40073);
- new b = GetBizzIDFromSQL(73);
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == vid)
- {
- SetPlayerVirtualWorldEx(v, 40073);
- SetPlayerInterior(v, 3);
- IsInBizzID[v] = b;
- }
- }
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 1219.8643, 189.4231, 19.9018)) //info center right entrance
- {
- if(vid == 0) return SysMsg(playerid, "Você deve estar em um veículo para usar esta entrada.");
- SetVehiclePos(vid, 1224.1946, 171.3404, 2086.3726);
- SetVehicleZAngle(vid, 180.0);
- LinkVehicleToInteriorEx(vid, 3);
- SetVehicleVirtualWorld(vid, 40073);
- new b = GetBizzIDFromSQL(73);
- IsInBizzID[playerid] = b;
- foreach(new v: Player)
- {
- if(Logged{v})
- {
- if(GetPlayerVehicleID(v) == vid)
- {
- SetPlayerVirtualWorldEx(v, 40073);
- SetPlayerInterior(v, 3);
- IsInBizzID[v] = b;
- }
- }
- }
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 617.8813, 1667.3865, 6.9922)) //Trucking Garage 1
- {
- if(Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid, "Só os camionistas podem entrar na garagem.");
- if(vid > 0)
- {
- SetVehiclePos(vid, 1062.526489, 2084.312500, 11.83835);
- SetVehicleZAngle(vid, 270.0);
- ShowInfoText(playerid,"~W~Elite trucking garagem~N~~R~escreva /sair para voltar",5000);
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 584.7940, 1644.5438, 6.9922)) //Trucking Garage 2
- {
- if(Faction[playerid] != FACTION_TRUCKING) return SysMsg(playerid, "Só os camionistas podem entrar na garagem.");
- if(vid > 0)
- {
- SetVehiclePos(vid, 1062.935791, 2132.715087, 11.839662);
- SetVehicleZAngle(vid, 255.4);
- ShowInfoText(playerid,"~W~Elite trucking garagem~N~~R~escreva /sair para voltar",5000);
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 7.0, 219.3465,8.0401,2.2700)) // BB Garage
- {
- if(vid > 0)
- {
- SetVehiclePos(vid, 1060.2075,2086.2024,10.5256);
- SetVehicleZAngle(vid, 328.4567);
- SetVehicleVirtualWorld(vid, 187);
- foreach(new p: Player) if(GetPlayerVehicleID(p) == vid) SetPlayerVirtualWorldEx(p, 187);
- return true;
- }
- else
- {
- SetPlayerPos(playerid,1060.2075,2086.2024,10.5256);
- SetPlayerFacingAngle(playerid,328.4567);
- SetPlayerVirtualWorldEx(playerid,187);
- return true;
- }
- }
- if(vid == 0)
- {
- new cVeh = GetClosestVehicle(playerid);
- new Float:Pos[3];
- GetVehiclePos(cVeh, Pos[0], Pos[1], Pos[2]);
- if(GetVehicleModel(cVeh) == 519 && IsPlayerInRangeOfPoint(playerid, 15.0, Pos[0], Pos[1], Pos[2]))
- {
- Teleport(playerid, 1.752286,34.395935,1199.593750, 182.570526, 1, cVeh);
- ShamalInterior[playerid] = cVeh;
- return true;
- }
- if(GetVehicleModel(cVeh) == 508 && IsPlayerInRangeOfPoint(playerid, 10.0, Pos[0], Pos[1], Pos[2]))
- {
- if(Locked{cVeh}) return SysMsg(playerid, "A Caravana está trancada.");
- Teleport(playerid, 2216.6523, -465.2169, 1023.7059, 0.0, 1, cVeh);
- JourneyInterior[playerid] = cVeh;
- return true;
- }
- if(GetVehicleModel(cVeh) == 454 && IsPlayerInRangeOfPoint(playerid, 15.0, Pos[0], Pos[1], Pos[2]))
- {
- if(Locked{cVeh}) return SysMsg(playerid, "Este Trópic está trancado.");
- Teleport(playerid, 2120.3872, -94.9943, 950.1429, 0.0, 1, cVeh);
- TropicInterior[playerid] = cVeh;
- return true;
- }
- if(IsTrailer(cVeh) && IsPlayerInRangeOfPoint(playerid, 10.0, Pos[0], Pos[1], Pos[2]))
- {
- foreach(new i: Player)
- {
- if(TruckingTrailer[i] == cVeh)
- {
- if(IsTrucking[i] == 1 || DeliveringStock[i] == 1) Teleport(playerid, 585.0163, 1682.1957, 995.6417, 0.0, 2, cVeh);
- return true;
- }
- }
- Teleport(playerid, 585.0163, 1682.1957, 995.6417, 0.0, 1, cVeh);
- TrailerInterior[playerid] = cVeh;
- }
- }
- else if(vid > 0)
- {
- if(GetVehicleModel(vid) == 508)
- {
- Teleport(playerid, 2216.6523, -465.2169, 1023.7059, 0.0, 1, vid);
- JourneyInterior[playerid] = vid;
- return true;
- }
- if(GetVehicleModel(vid) == 454)
- {
- Teleport(playerid, 2120.3872, -94.9943, 950.1429, 0.0, 1, vid);
- TropicInterior[playerid] = vid;
- return true;
- }
- }
- if(IsInPrison(playerid))
- {
- for(new w = 0; w < 16; w++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, PrisonCellsOut[w][0], PrisonCellsOut[w][1], PrisonCellsOut[w][2]))
- {
- if(PrisonCellsLock[w] == 1) return SysMsg(playerid, "A porta da cela está trancada.");
- else return SetPlayerPos(playerid, PrisonCellsIn[w][0], PrisonCellsIn[w][1], PrisonCellsIn[w][2]);
- }
- }
- for(new w = 0; w < sizeof(PrisonDoors); w++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, PrisonDoors[w][0], PrisonDoors[w][1], PrisonDoors[w][2]) && GetPlayerVirtualWorld(playerid) == PrisonWorldsOut[w])
- {
- if(PrisonDoorsLock[w] == 1) return SysMsg(playerid, "Esta porta está trancada.");
- SetPlayerPos(playerid, PrisonDoors[w][4], PrisonDoors[w][5], PrisonDoors[w][6]);
- SetPlayerFacingAngle(playerid, PrisonDoors[w][7]);
- SetPlayerVirtualWorld(playerid, PrisonWorldsIn[w]);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 1.0, PrisonDoors[w][4], PrisonDoors[w][5], PrisonDoors[w][6]) && GetPlayerVirtualWorld(playerid) == PrisonWorldsIn[w])
- {
- if(PrisonDoorsLock[w] == 1) return SysMsg(playerid, "Esta porta está trancada.");
- if(w == 12)
- {
- TogglePlayerControllable(playerid, false);
- SetTimerEx("UnFreezePlayer", 1000, 0, "d", playerid);
- }
- SetPlayerPos(playerid, PrisonDoors[w][0], PrisonDoors[w][1], PrisonDoors[w][2]);
- SetPlayerFacingAngle(playerid, PrisonDoors[w][3]);
- SetPlayerVirtualWorld(playerid, PrisonWorldsOut[w]);
- return true;
- }
- }
- }
- foreach(new p: Player)
- {
- if(IsSpectating[p] == playerid)
- {
- SetPlayerVirtualWorldEx(p, GetPlayerVirtualWorld(playerid));
- SetPlayerInterior(p, GetPlayerInterior(playerid));
- PlayerSpectatePlayer(p, playerid);
- }
- }
- return true;
- }
- CMD:ent(playerid, params[]) return cmd_entrar(playerid, params);
- CMD:e(playerid, params[])
- {
- if(GetPlayerState(playerid) == 1) return cmd_entrar(playerid, params);
- else return cmd_motor(playerid);
- }
- CMD:sair(playerid)
- {
- if(!Logged{playerid}) return true;
- UnlockAchievement(playerid,13);
- for(new i = 0; i < MAX_INTERIORS; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 5.0, Interiors[i][iPosX], Interiors[i][iPosY], Interiors[i][iPosZ]) && GetPlayerVirtualWorld(playerid) == Interiors[i][iVirtualWorld] && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
- {
- Teleport(playerid, Interiors[i][oPosX], Interiors[i][oPosY], Interiors[i][oPosZ], Interiors[i][oAngle], Interiors[i][oInteriorID], Interiors[i][oVirtualWorld]);
- if(Interiors[i][interiorID] == 115) IsInBizzID[playerid] = GetBizzID("SANews HQ Corporation");
- if(Interiors[i][oInteriorID] == 0 && Interiors[i][oVirtualWorld] == 0)
- {
- IsInHouseID[playerid] = -1;
- IsInBizzID[playerid] = -1;
- IsInGarageID[playerid] = -1;
- }
- return true;
- }
- }
- if(IsInGarageID[playerid] != -1 && GetPlayerVirtualWorld(playerid) == GarageData[IsInGarageID[playerid]][iVirtualWorld])
- {
- new g = IsInGarageID[playerid];
- if(IsPlayerInAnyVehicle(playerid))
- {
- if(GarageCheck(g, 0)) return SysMsg(playerid, "Há atualmente um veículo bloqueando sua saída.");
- new vid = GetPlayerVehicleID(playerid);
- SetVehiclePos(vid, GarageData[g][oPosX], GarageData[g][oPosY], GarageData[g][oPosZ]);
- SetVehicleVirtualWorld(vid, 0);
- LinkVehicleToInterior(vid, 0);
- SetVehicleZAngle(vid, GarageData[g][oVehicleAngle]);
- foreach(new i: Player)
- {
- if(GetPlayerVehicleID(i) == vid)
- {
- SetPlayerVirtualWorld(i, 0);
- SetPlayerInterior(i, 0);
- IsInGarageID[i] = -1;
- }
- }
- return true;
- }
- else
- {
- SetPlayerPos(playerid, GarageData[g][oPosX], GarageData[g][oPosY], GarageData[g][oPosZ]);
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerInterior(playerid, 0);
- IsInGarageID[playerid] = -1;
- }
- return true;
- }
- new VehId = GetPlayerVehicleID(playerid);
- if(IsPlayerInRangeOfPoint(playerid,7.5,315.747528,973.342773,1961.580932)) //Adromada
- {
- for(new v = 1, x = GetVehiclePoolSize(); v <= x; v++)
- {
- new model = GetVehicleModel(v);
- if(model == 592)
- {
- new Float:ox,Float:oy,Float:oz,Float:ang;
- GetVehiclePos(v,ox,oy,oz);
- GetVehicleZAngle(v,ang);
- if(ang < 90 && ang > 0)
- {
- SetPlayerPos(playerid,ox-5,oy-5,oz);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- return true;
- }
- else if(ang > 89 && ang < 181)
- {
- SetPlayerPos(playerid,ox-5,oy+5,oz);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- return true;
- }
- else if(ang < 271 && ang > 180)
- {
- SetPlayerPos(playerid,ox+5,oy+5,oz);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- return true;
- }
- else if(ang > 270 && ang < 0)
- {
- SetPlayerPos(playerid,ox+5,oy-5,oz);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- return true;
- }
- }
- }
- }
- else if(ShamalInterior[playerid] > 0)
- {
- new Float:sPos[3];
- GetVehiclePos(ShamalInterior[playerid], sPos[0], sPos[1], sPos[2]);
- SetPlayerPos(playerid, sPos[0]+2.0, sPos[1]+2.0, sPos[2]);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorldEx(playerid, 0);
- ShamalInterior[playerid] = 0;
- return true;
- }
- else if(JourneyInterior[playerid] > 0)
- {
- new seatavailable = 1;
- foreach(new pl: Player)
- {
- if(GetPlayerVehicleID(pl) == JourneyInterior[playerid] && GetPlayerState(pl) == PLAYER_STATE_PASSENGER)
- {
- seatavailable = 0;
- }
- }
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorldEx(playerid, GetVehicleVirtualWorld(JourneyInterior[playerid]));
- if(seatavailable == 0)
- {
- new Float:sPos[3];
- GetVehiclePos(JourneyInterior[playerid], sPos[0], sPos[1], sPos[2]);
- SetPlayerPos(playerid, sPos[0]+2.0, sPos[1]+2.0, sPos[2]);
- }
- else PutPlayerInVehicle(playerid, JourneyInterior[playerid], 1);
- JourneyInterior[playerid] = 0;
- return true;
- }
- else if(TropicInterior[playerid] > 0)
- {
- new Float:x, Float:y, Float:z, Float:a;
- GetVehiclePos(TropicInterior[playerid], x, y, z);
- GetVehicleZAngle(TropicInterior[playerid], a);
- TogglePlayerControllable(playerid, 0);
- SetPlayerPos(playerid, x, y, z + 5);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorld(playerid, 0);
- TropicInterior[playerid] = 0;
- TeleportTimer[playerid] = 4;
- BeingTeleported{playerid} = true;
- return true;
- }
- else if(TrailerInterior[playerid] > 0)
- {
- new Float:x, Float:y, Float:z, Float:a;
- GetVehiclePos(TrailerInterior[playerid], x, y, z);
- GetVehicleZAngle(TrailerInterior[playerid], a);
- TogglePlayerControllable(playerid, 0);
- SetPlayerPos(playerid, x, y, z + 3);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorld(playerid, GetVehicleVirtualWorld(TrailerInterior[playerid]));
- TrailerInterior[playerid] = 0;
- TeleportTimer[playerid] = 4;
- BeingTeleported{playerid} = true;
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 7.0, 1061.1815,2084.6909,10.5256) && GetPlayerVirtualWorld(playerid) == 187) //BB Garage
- {
- if(VehId > 0)
- {
- SetVehiclePos(VehId, 219.3465,8.0401,2.2797);
- SetVehicleZAngle(VehId, 269.8848);
- SetVehicleVirtualWorld(VehId, 0);
- foreach(new p: Player)
- {
- if(GetPlayerVehicleID(p) == VehId)
- {
- SetPlayerVirtualWorldEx(p, 0);
- }
- }
- }
- else
- {
- SetPlayerPos(playerid,219.3465,8.0401,2.2797);
- SetPlayerFacingAngle(playerid,269.8848);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorldEx(playerid,0);
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 1481.2957,-2589.0603,13.6197) && GetPlayerVirtualWorld(playerid) == 187) //ST Garage EXIT
- {
- if(VehId == 0)
- {
- SetPlayerPos(playerid, 974.4432,-1091.5729,24.2055);
- SetPlayerFacingAngle(playerid, 269.5953);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorldEx(playerid, 0);
- }
- else
- {
- SetVehiclePos(VehId, 974.4432,-1091.5729,24.2055);
- SetVehicleZAngle(VehId, 269.5953);
- SetVehicleVirtualWorld(VehId, 0);
- LinkVehicleToInteriorEx(VehId, 0);
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == VehId)
- {
- SetPlayerVirtualWorldEx(v, 0);
- SetPlayerInterior(v, 0);
- }
- }
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, -113.4797,-1137.5911,1001.5186) && GetPlayerVirtualWorld(playerid) == 3) //RosMC Garage EXIT
- {
- if(VehId == 0)
- {
- SetPlayerPos(playerid, -63.7647, -1116.42, 1.078);
- SetPlayerFacingAngle(playerid, 68.373);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorldEx(playerid, 0);
- }
- else
- {
- SetVehiclePos(VehId, -67.4992, -1119.4043, 0.7837);
- SetVehicleZAngle(VehId, 70.0);
- SetVehicleVirtualWorld(VehId, 0);
- LinkVehicleToInteriorEx(VehId, 0);
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == VehId)
- {
- SetPlayerVirtualWorldEx(v, 0);
- SetPlayerInterior(v, 0);
- }
- }
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 2300.9836,2498.7104,3.2734) && GetPlayerVirtualWorld(playerid) == 911) //DPD Garage EXIT
- {
- if(VehId == 0) return true;
- else
- {
- SetPlayerVirtualWorldEx(playerid, 0);
- SetVehiclePos(VehId, 623.303771, -598.885620, 17.077930);
- SetVehicleZAngle(VehId, 270.0);
- SetVehicleVirtualWorld(VehId, 0);
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == VehId)
- {
- SetPlayerVirtualWorldEx(v, 0);
- }
- }
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 2036.1995, -2593.0525, 13.6216) && GetPlayerVirtualWorld(playerid) == 558822) //SAN Garage EXIT
- {
- if(VehId == 0)
- {
- SetPlayerPos(playerid, 1198.8041,254.2202,19.5547);
- SetPlayerFacingAngle(playerid, 335.8774);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorldEx(playerid, 0);
- }
- else
- {
- SetVehiclePos(VehId, 1200.2883, 257.5103, 19.3547);
- SetVehicleZAngle(VehId, 335.8774);
- SetVehicleVirtualWorld(VehId, 0);
- LinkVehicleToInteriorEx(VehId, 0);
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == VehId)
- {
- SetPlayerVirtualWorldEx(v, 0);
- SetPlayerInterior(v, 0);
- }
- }
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 2036.1995, -2593.0525, 13.6216) && GetPlayerVirtualWorld(playerid) == 558821) //SWAT Garage EXIT
- {
- if(VehId == 0)
- {
- SetPlayerPos(playerid, 844.2215, -598.8593, 18.4219);
- SetPlayerFacingAngle(playerid, 335.8774);
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorldEx(playerid, 0);
- }
- else
- {
- SetVehiclePos(VehId, 844.2215, -598.8593, 18.4219);
- SetVehicleZAngle(VehId, 335.8774);
- SetVehicleVirtualWorld(VehId, 0);
- LinkVehicleToInteriorEx(VehId, 0);
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == VehId)
- {
- SetPlayerVirtualWorldEx(v, 0);
- SetPlayerInterior(v, 0);
- }
- }
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 1224.2386, 184.9009, 2090.1450)) //info center garage left exit
- {
- if(VehId == 0) return SysMsg(playerid, "Você deve estar em um veículo para usar esta saída.");
- SetVehiclePos(VehId, 1219.8643, 189.4231, 19.9018);
- SetVehicleZAngle(VehId, 335.8774);
- SetVehicleVirtualWorld(VehId, 0);
- LinkVehicleToInteriorEx(VehId, 0);
- IsInBizzID[playerid] = -1;
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == VehId)
- {
- SetPlayerVirtualWorldEx(v, 0);
- SetPlayerInterior(v, 0);
- IsInBizzID[v] = -1;
- }
- }
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 1244.7186, 184.5773 ,2090.0583)) //info center garage right exit
- {
- if(VehId == 0) return SysMsg(playerid, "Você deve estar em um veículo para usar esta saída.");
- SetVehiclePos(VehId, 1239.3077, 180.7602, 19.9204);
- SetVehicleZAngle(VehId, 335.8774);
- SetVehicleVirtualWorld(VehId, 0);
- LinkVehicleToInteriorEx(VehId, 0);
- IsInBizzID[playerid] = -1;
- foreach(new v: Player)
- {
- if(Logged{v} && GetPlayerVehicleID(v) == VehId)
- {
- SetPlayerVirtualWorldEx(v, 0);
- SetPlayerInterior(v, 0);
- IsInBizzID[v] = -1;
- }
- }
- }
- if(IsPlayerInRangeOfPoint(playerid, 5.0, -2887.7366, 1914.3883, -18.6266)) //pirate ship
- {
- Teleport(playerid, -4118.1626, 1863.7806, 1.0000, 0.0, 0, 0);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,7.5,1064.570678, 2085.178955, 10.820312)) //Trucking Garage 1
- {
- if(VehId > 0)
- {
- SetVehiclePos(VehId, 608.7408, 1661.5490, 6.9922);
- SetVehicleZAngle(VehId, 33.82);
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid,7.5,1065.835571, 2131.229248, 10.820312)) //Trucking Garage 2
- {
- if(VehId > 0)
- {
- SetVehiclePos(VehId, 627.3016, 1673.2096, 6.9922);
- SetVehicleZAngle(VehId, 33.82);
- }
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 5.0, 2807.619873, -1171.899902, 1025.570312) && GetPlayerVirtualWorld(playerid) == 9876543)
- {
- SetPlayerPos(playerid, -691.797058, 939.202087, 13.632812);
- SetPlayerVirtualWorldEx(playerid, 0);
- SetPlayerInterior(playerid, 0);
- return true;
- }
- else if(IsPlayerInRangeOfPoint(playerid, 15.0, 2299.4983, 2498.2363, 3.2734) && VehId > 0 && Faction[playerid] == FACTION_COP && GetPlayerVirtualWorld(playerid) == 911)
- {
- SetVehiclePos(VehId, 623.303771, -598.885620, 17.077930);
- SetVehicleZAngle(VehId, 270.0);
- SetVehicleVirtualWorld(VehId, 0);
- foreach(new p: Player)
- {
- if(GetPlayerVehicleID(p) == VehId)
- {
- SetPlayerVirtualWorldEx(p, 0);
- }
- }
- return true;
- }
- //Aperture Post
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -121.2304,1607.1378,18.1936) && Faction[playerid] == FACTION_RESEARCH) SetPlayerPos(playerid,-119.0000,1607.1378,18.1936);
- else if(IsPlayerInRangeOfPoint(playerid, 2.0, -105.9196,1607.6631,18.1957) && Faction[playerid] == FACTION_RESEARCH) SetPlayerPos(playerid,-107.9196,1607.6631,18.1957);
- else if(IsInHouseID[playerid] != -1)
- {
- new h = IsInHouseID[playerid];
- if(HouseData[h][HouseExtVW] == 0) //This check is for houses that aren't flats.
- {
- if(HouseData[h][InsideID] == 11) //cheques if the interior is a custom interior.
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseData[h][intPosX], HouseData[h][intPosY], HouseData[h][intPosZ]))
- {
- Teleport(playerid, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ], 0.0, 0, 0);
- if(HouseData[h][HouseLocked] == 1) SysMsg(playerid,"Você pulou pela janela enquanto a porta estava trancada.");
- if(HouseData[h][HMusicPlaying] == 1) StopAudioStreamForPlayer(playerid);
- HouseData[h][HouseOccupants] --;
- IsInHouseID[playerid] = -1;
- CancelEdit(playerid);
- return true;
- }
- }
- else //The interior is not a custom interior.
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, InsideIDs[HouseData[h][InsideID] - 1][InsideX], InsideIDs[HouseData[h][InsideID] - 1][InsideY], InsideIDs[HouseData[h][InsideID] - 1][InsideZ]))
- {
- Teleport(playerid, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ], 0.0, 0, 0);
- if(HouseData[h][HouseLocked] == 1) SysMsg(playerid,"Você pulou pela janela enquanto a porta estava trancada.");
- if(HouseData[h][HMusicPlaying] == 1) StopAudioStreamForPlayer(playerid);
- HouseData[h][HouseOccupants] --;
- IsInHouseID[playerid] = -1;
- CancelEdit(playerid);
- return true;
- }
- }
- }
- else
- {
- if(HouseData[h][InsideID] == 11) //cheques if the interior is a custom interior.
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseData[h][intPosX], HouseData[h][intPosY], HouseData[h][intPosZ]))
- {
- Teleport(playerid, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ], 0.0, 0, 0);
- if(HouseData[h][HouseLocked] == 1) SysMsg(playerid,"Você pulou pela janela enquanto a porta estava trancada.");
- if(HouseData[h][HMusicPlaying] == 1) StopAudioStreamForPlayer(playerid);
- HouseData[h][HouseOccupants] --;
- IsInHouseID[playerid] = -1;
- CancelEdit(playerid);
- return true;
- }
- }
- else //The interior is not a custom interior.
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, InsideIDs[HouseData[h][InsideID] - 1][InsideX], InsideIDs[HouseData[h][InsideID] - 1][InsideY], InsideIDs[HouseData[h][InsideID] - 1][InsideZ]))
- {
- Teleport(playerid, HouseData[h][oPosX], HouseData[h][oPosY], HouseData[h][oPosZ], 0.0, 2, HouseData[h][HouseExtVW]);
- if(HouseData[h][HouseLocked] == 1) SysMsg(playerid,"Você pulou pela janela enquanto a porta estava trancada.");
- if(HouseData[h][HMusicPlaying] == 1) StopAudioStreamForPlayer(playerid);
- HouseData[h][HouseOccupants] --;
- IsInHouseID[playerid] = -1;
- CancelEdit(playerid);
- return true;
- }
- }
- }
- }
- else if(IsInBizzID[playerid] != -1)
- {
- new b = IsInBizzID[playerid];
- if(GetPlayerVirtualWorld(playerid) == BizzData[b][BizzVW])
- {
- if(BizzData[b][IsSpecial] == 1) //cheques if the player is in a special business
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, BizzData[b][iPosX], BizzData[b][iPosY], BizzData[b][iPosZ]))
- {
- Teleport(playerid, BizzData[b][oPosX], BizzData[b][oPosY], BizzData[b][oPosZ], 0.0, 0, BizzData[b][ExitVW]);
- if(BizzData[b][BMusicPlaying] == 1) StopAudioStreamForPlayer(playerid);
- BizzData[b][BizzOccupants] --;
- IsInBizzID[playerid] = -1;
- return true;
- }
- }
- else //cheques if the player is in a standard business
- {
- if(IsPlayerInRangeOfPoint(playerid, 2.0, BInsideIDs[BizzData[b][BizzType]][InsideX], BInsideIDs[BizzData[b][BizzType]][InsideY], BInsideIDs[BizzData[b][BizzType]][InsideZ]))
- {
- Teleport(playerid, BizzData[b][oPosX], BizzData[b][oPosY], BizzData[b][oPosZ], 0.0, 0, BizzData[b][ExitVW]);
- if(BizzData[b][BMusicPlaying] == 1) StopAudioStreamForPlayer(playerid);
- BizzData[b][BizzOccupants] --;
- IsInBizzID[playerid] = -1;
- return true;
- }
- }
- }
- }
- else if(IsInMotel[playerid] > 0 && GetPlayerVirtualWorld(playerid) == 50000+IsInMotel[playerid])
- {
- Teleport(playerid, MotelData[IsInMotel[playerid]][RoomX], MotelData[IsInMotel[playerid]][RoomY], MotelData[IsInMotel[playerid]][RoomZ], 0.0, 0, 0);
- IsInMotel[playerid] = 0;
- return true;
- }
- else if(ViewingMicksCar[playerid] >= 0)
- {
- DestroyVehicleEx(ViewingMicksCarID[playerid], "ViewingMicksCarID 2");
- ViewingMicksCar[playerid] = -1;
- ViewingMicksCarID[playerid] = -1;
- SetPlayerVirtualWorldEx(playerid, 0);
- SetCameraBehindPlayer(playerid);
- TogglePlayerControllable(playerid, 1);
- ShowMessage(playerid, "Dillimore concessionária automotiva", "Você saiu Dillimore catálogo automóvel concessionária.\n\nObrigado pela visita, Volte sempre.", "Ok");
- return true;
- }
- else if(ViewingBuyBikes[playerid] >= 0)
- {
- DestroyVehicleEx(ViewingBikeID[playerid], "ViewingBikeID[playerid] 2");
- ViewingBuyBikes[playerid] = -1;
- ViewingBikeID[playerid] = -1;
- SetPlayerVirtualWorldEx(playerid, 0);
- SetCameraBehindPlayer(playerid);
- TogglePlayerControllable(playerid, 1);
- ShowMessage(playerid, "Concessionária de motocicletas", "Você saiu do catálogo de concessionárias.\n\nObrigado pela visita, Volte sempre.", "Ok");
- return true;
- }
- else if(ViewingBuyBoats[playerid] >= 0)
- {
- DestroyVehicleEx(ViewingBoatID[playerid], "ViewingboatID[playerid] 2");
- ViewingBuyBoats[playerid] = -1;
- ViewingBoatID[playerid] = -1;
- SetPlayerVirtualWorldEx(playerid, 0);
- SetCameraBehindPlayer(playerid);
- TogglePlayerControllable(playerid, 1);
- ShowMessage(playerid, "Concessionária de barcos", "Você saiu do catálogo de concessionárias.\n\nObrigado pela visita, Volte sempre.", "Ok");
- return true;
- }
- if(IsInPrison(playerid))
- {
- for(new w = 0; w < 16; w++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, PrisonCellsIn[w][0], PrisonCellsIn[w][1], PrisonCellsIn[w][2]))
- {
- if(PrisonCellsLock[w] == 1) return SysMsg(playerid, "A porta da cela está trancada.");
- else return SetPlayerPos(playerid, PrisonCellsOut[w][0], PrisonCellsOut[w][1], PrisonCellsOut[w][2]);
- }
- }
- }
- foreach(new p: Player)
- {
- if(IsSpectating[p] == playerid)
- {
- SetPlayerVirtualWorldEx(p, GetPlayerVirtualWorld(playerid));
- SetPlayerInterior(p, GetPlayerInterior(playerid));
- PlayerSpectatePlayer(p, playerid);
- }
- }
- return true;
- }
- CMD:revistar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(PlayerLevel[playerid] < 3) return SysMsg(playerid,"Você precisa ser pelo menos nível 3 para usar isso.");
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /revistar [ID ou parte do nome ou ID estranho]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(playa == playerid) return SysMsg(playerid,"Você não pode se revistar.");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.0,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador para revistar-los.");
- RequestedToFrisk[playa] = playerid;
- SetTimerEx("CancelPlayerFrisk", 15000, 0, "ii", playerid, playa);
- SendClientMessageF(playa, COLOR_WHITE, "%s quer revistar você, use '/aceitar revista' para continuar. (Isso será tempo limite em 15 segundos)", NameRP(playerid));
- SendClientMessageF(playerid, COLOR_WHITE, "Você pediu para revistar %s. Espere ele(a) aceitar primeiro. (Isso será tempo limite em 15 segundos)", NameRP(playa));
- return true;
- }
- CMD:vendarolhos(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(PlayerLevel[playerid] < 3) return SysMsg(playerid, "Você precisa ter no mínimo nível 3 para vendar os olhos de alguém.");
- if(Inventory[playerid][Blindfold] == 0) return SysMsg(playerid, "Você precisa ter uma venda de pano para vendar os olhos de alguém.");
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /vendarolhos [Identificação ou parte do nome ou ID do Estrangeiro]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(Blindfolded[playa] == 1) return SysMsg(playerid, "Esse jogador já tem seus olhos vendados.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode colocar venda em seus proprios olhos.");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,5.0,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto deste jogador.");
- RequestedToBlindfold[playa] = playerid;
- SetTimerEx("CancelPlayerBlindfold", 15000, 0, "ii", playerid, playa);
- SendClientMessageF(playa, COLOR_WHITE, "%s quer tapar seus olhos com uma faixa, use '/aceitar blindfold' para continuar. (Pode demorar 15 segundos)", NameRP(playerid));
- SendClientMessage(playa, COLOR_WHITE, "Certifique-se de que o jogador que tentou vendar seus olhos tenha feito um bom roleplay antes de aceitar.");
- SendClientMessageF(playerid, COLOR_WHITE, "Você pediu para tapar os olhos de %s. Ele(a) precisa aceitar primeiro. (Pode demorar 15 segundos)", NameRP(playa));
- return true;
- }
- CMD:destapar(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new playa = -1, name[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]", name)) return SysMsg(playerid,"Use: /destapar [Identificação ou parte do nome ou ID do Estrangeiro]");
- if(strval(name) >= 500)
- {
- foreach(new p: Player)
- {
- if(MaskLabelNumber[p] == strval(name))
- {
- playa = p;
- }
- }
- }
- else playa = GetPlayerIDs(name);
- if(Blindfolded[playa] == 0) return SysMsg(playerid, "Esse jogador não tem os olhos tapados.");
- if(InvalidPlayer(playa) || !Logged{playa}) return SysMsg(playerid,"Esse jogador não está conectado e logado.");
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid && IsTied[playa] > 0) return SysMsg(playerid, "Você não pode remover uma Faixa de Tapar olhos de si mesmo.");
- if(playa == playerid)
- {
- format(gstr, sizeof(gstr),"* %s se posiciona atrás da cabeça de %s desamarra a faixa. *",NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessage(playerid, COLOR_ORANGE, "Você removeu a faixa que tapava os olhos desse jogador.");
- }
- else
- {
- format(gstr, sizeof(gstr),"* %s remove a faixa que tapava os olhos de %s. *",NameRP(playerid), NameRP(playa));
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playa, COLOR_ORANGE, "%s removeu a faixa que tapava seus olhos.", NameRP(playerid));
- }
- Inventory[playerid][Blindfold] = 1;
- MySQLUpdateInt(SQLID[playerid], "HasBlindfold", Inventory[playerid][Blindfold], "players");
- PlayerTextDrawHide(playa, BlindfoldEffect[playerid]);
- GangZoneHideForPlayer(playa, BlindZone);
- Blindfolded[playa] = 0;
- return true;
- }
- CMD:vender(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new element[10], playa = -1, price, slotid;
- if(sscanf(params, "s[10]U(-1)", element, playa)) return SysMsg(playerid,"Use: /vender [casa/negocio/veiculo]");
- if(strcmp("casa", element, true) == 0)
- {
- if(GetPlayerHouseCount(playerid) == 0) return SysMsg(playerid,"Você não tem uma casa.");
- new id;
- if(sscanf(params, "s[10]uii", element, playa, id, price))
- {
- for(new x = 0; x < MAX_HOUSE_PER_PLAYER; x++)
- {
- if(HasHouseKey[playerid][x] != -1)
- {
- SendClientMessageF(playerid, COLOR_WHITE, "Casa ID: %i - %s", x, HouseData[HasHouseKey[playerid][x]][HouseDescription]);
- }
- }
- return SysMsg(playerid,"Use: /vender Casa [ID do jogador ou nome] [ID da casa acima] [preço]");
- }
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode vender isso para si mesmo.");
- if(id != 0 && id != 1) return SysMsg(playerid, "Casa inválida.");
- if(HasHouseKey[playerid][id] == -1) return SysMsg(playerid, "Você não tem uma casa nesse slot.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,4.0,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador.");
- if(GetPlayerHouseCount(playa) >= MAX_HOUSE_PER_PLAYER) return SysMsg(playerid,"Esse jogador já têm uma chave de casa.");
- if(price < 1 || price > 100000000) return SysMsg(playerid,"O preço está fora dos limites: $1 até $100,000,000.");
- SellingAsset[playerid][0] = 1; //yes/no
- SellingAsset[playerid][1] = playa; //playerid
- SellingAsset[playerid][2] = 1; //type
- SellingAsset[playerid][3] = HasHouseKey[playerid][id]; //id
- SellingAsset[playerid][4] = price; //price
- SellingAsset[playerid][5] = id;
- SendClientMessageF(playa, COLOR_WHITE, "%s quer vender sua casa(%s) por $%s. Use '/aceitar casa' para confirmar.", NameEx(playerid), HouseData[HasHouseKey[playerid][id]][HouseDescription], format_cash(price));
- SendClientMessageF(playerid, COLOR_WHITE, "Você está vendendo sua casa(%s) para %s por $%s. Ele(a) deve aceitar para confirmar.", HouseData[HasHouseKey[playerid][id]][HouseDescription], NameEx(playa), format_cash(price));
- }
- else if(strcmp("negocio", element, true) == 0)
- {
- new bizzCount = 0;
- for(new biz = 0; biz < MAX_BIZZ_PER_PLAYER; biz++)
- {
- if(PlayerBizzID[playerid][biz] != -1) bizzCount ++;
- }
- if(bizzCount == 0) return SysMsg(playerid,"Você não tem negócios para vender.");
- if(sscanf(params, "s[10]uii", element, playa, slotid, price))
- {
- SysMsg(playerid, "Empresas que você pode vender:");
- for(new biz = 0; biz < MAX_BIZZ_PER_PLAYER; biz++) if(PlayerBizzID[playerid][biz] != -1) SendClientMessageF(playerid, COLOR_WHITE, "Negócio ID: %i - %s", biz+1, BizzData[PlayerBizzID[playerid][biz]][BizzDescription]);
- SysMsg(playerid,"Use: /vender Negocio [ID do jogador ou nome] [ID do Negocio (de cima)] [preço]");
- return true;
- }
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode vender isso para si mesmo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,4.0,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador.");
- bizzCount = 0;
- for(new bz = 0; bz < MAX_BIZZ_PER_PLAYER; bz++)
- {
- if(PlayerBizzID[playa][bz] != -1) bizzCount ++;
- }
- if(bizzCount == MAX_BIZZ_PER_PLAYER) return SysMsg(playerid,"Esse jogador não pode ter mais negócios.");
- if(slotid < 1 || slotid > MAX_BIZZ_PER_PLAYER) return SysMsg(playerid,"ID do negócio inválido [Error 1]");
- slotid --;
- if(PlayerBizzID[playerid][slotid] == -1) return SysMsg(playerid,"ID do negócio inválido. [Error 2]");
- if(price < 1 || price > 100000000) return SysMsg(playerid,"O preço está fora dos limites: $1 à $100,000,000.");
- SellingAsset[playerid][0] = 1; //yes/no
- SellingAsset[playerid][1] = playa; //playerid
- SellingAsset[playerid][2] = 2; //type
- SellingAsset[playerid][3] = PlayerBizzID[playerid][slotid]; //id
- SellingAsset[playerid][4] = price; //price
- SendClientMessageF(playa, COLOR_WHITE, "%s quer vender seu negócio(%s) por $%s. Use '/aceitar negocio' para confirmar.", NameEx(playerid), BizzData[PlayerBizzID[playerid][slotid]][BizzDescription], format_cash(price));
- SendClientMessageF(playerid, COLOR_WHITE, "Você está vendendo seu negócio(%s) para %s por $%s. Ele(a) deve aceitar primeiro para confirmar.", BizzData[PlayerBizzID[playerid][slotid]][BizzDescription], NameEx(playa), format_cash(price));
- }
- else if(strcmp("veiculo", element, true) == 0)
- {
- if(GetPlayerOwnedVehicleCount(playerid) == 0) return SysMsg(playerid,"Você não possui veículos para vender.");
- if(sscanf(params, "s[10]uii", element, playa, slotid, price))
- {
- new counter = 0;
- SysMsg(playerid, "Veículos que você pode vender:");
- for(new vh = 1, x = GetVehiclePoolSize(); vh <= x; vh++)
- {
- if(VehicleData[vh][VehicleOwnerSQLID] == SQLID[playerid])
- {
- if(!VehicleData[vh][Impounded] && !VehicleData[vh][NeedsRecovery])
- {
- counter ++;
- format(gstr, sizeof(gstr), "ID do veículo: %i - %s", counter, GetVehicleName(vh));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- }
- }
- if(counter == 0) return SysMsg(playerid,"Você não tem veículos para vender, você não pode vender veículos imobilizados ou que exigem recuperação.");
- SysMsg(playerid,"Use: /vender veiculo [ID do jogador ou nome] [ID do veículo (de cima)] [preço]");
- return true;
- }
- if(InvalidPlayer(playa)) return SysMsg(playerid, NOPLAYER);
- if(IsPlayerNPC(playa)) return SysMsg(playerid,"Esse jogador é um NPC.");
- if(playa == playerid) return SysMsg(playerid,"Você não pode vender isso para si mesmo.");
- new Float:tX,Float:tY,Float:tZ;
- GetPlayerPos(playa,tX,tY,tZ);
- if(!IsPlayerInRangeOfPoint(playerid,4.0,tX,tY,tZ)) return SysMsg(playerid,"Você deve estar perto do jogador.");
- if(GetPlayerOwnedVehicleCount(playa) >= MAX_VEH_PER_PLAYER) return SysMsg(playerid,"Esse jogador não pode ter mais veículos.");
- if(slotid < 1 || slotid > MAX_VEH_PER_PLAYER) return SysMsg(playerid,"O ID do veículo era inválido. [Error 1]");
- new vehd = 0, vslot = slotid, x;
- for(vehd = 1, x = GetVehiclePoolSize(); vehd <= x; vehd++)
- {
- if(VehicleData[vehd][VehicleOwnerSQLID] == SQLID[playerid])
- {
- vslot --;
- if(vslot != 0) continue;
- else break;
- }
- }
- if(VehicleData[vehd][DonatorCar]) return SysMsg(playerid,"Você não pode vender um carro de Donator.");
- if(VehicleData[vehd][Impounded]) return SysMsg(playerid,"O veículo esta apreendido, você não pode vendê-lo.");
- if(price < 1 || price > 10000000) return SysMsg(playerid,"O preço está fora dos limites: $1 até $10,000,000.");
- SellingAsset[playerid][0] = 1; //yes/no
- SellingAsset[playerid][1] = playa; //playerid
- SellingAsset[playerid][2] = 3; //type
- SellingAsset[playerid][3] = vehd; //id
- SellingAsset[playerid][4] = price; //price
- format(gstr, sizeof(gstr),"%s quer vender seu veículo(%s) por $%s. Use '/aceitar veiculo' para confirmar", NameEx(playerid), GetVehicleName(vehd), format_cash(price));
- SendClientMessage(playa, COLOR_WHITE, gstr);
- format(gstr, sizeof(gstr),"Você está vendendo seu veículo(%s) para %s por $%s. Ele(a) deve aceitar para confirmar.", GetVehicleName(vehd), NameEx(playa), format_cash(price));
- SendClientMessage(playerid, COLOR_WHITE, gstr);
- }
- return true;
- }
- CMD:cancelarvenda(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- foreach(new i: Player)
- {
- if(SellingAsset[playerid][1] == i)
- {
- if(SellingAsset[playerid][2] == 1) SysMsg(i,"O jogador que você estava comprando uma casa cancelou o acordo.");
- else if(SellingAsset[playerid][2] == 2) SysMsg(i,"O jogador que você estava comprando um negócio cancelou o acordo.");
- else if(SellingAsset[playerid][2] == 3) SysMsg(i,"O jogador que você estava comprando um veículo cancelou o negócio.");
- SysMsg(playerid,"Você cancelou o negócio.");
- SellingAsset[playerid][0] = 0; //yes/no
- SellingAsset[playerid][1] = -1; //playerid
- SellingAsset[playerid][2] = 0; //type
- SellingAsset[playerid][3] = -1; //id
- SellingAsset[playerid][4] = 0; //price
- SellingAsset[playerid][5] = -1;
- break;
- }
- }
- return true;
- }
- CMD:alugarquarto(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(RentRoom[playerid] > 0) return SysMsg(playerid,"Você já alugou um quarto de Motel.");
- new motel = GetMotelID(playerid);
- if(motel == 0) return SysMsg(playerid,"Você não está em nenhum motel");
- mysql_format(conn, mquery, sizeof(mquery), "SELECT id FROM motel WHERE MotelID = %i AND OwnerSQLID = 0 LIMIT 1", motel);
- mysql_pquery(conn, mquery, "ProcessRoomRental", "dds", playerid, motel, params);
- return true;
- }
- CMD:estenderaluguel(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(RentRoom[playerid] == 0) return SysMsg(playerid,"Você não tem um quarto de motel alugado.");
- new motel = GetMotelID(playerid);
- if(motel == 0) return SysMsg(playerid,"Você não está perto de nenhum motel.");
- if(MotelData[RentRoom[playerid]][RoomDaysLeft] > 2) return SysMsg(playerid,"Você só pode estender a sua estadia aqui quando Você tem 2 ou menos dias restantes.");
- if(isnull(params)) return SysMsg(playerid,"Use: /estenderaluguel [quantidade de dias para adicionar]");
- new daystostay = strval(params);
- if(daystostay < 1 || daystostay > 7) return SysMsg(playerid,"Você só pode estender a sua estadia em um máximo de 7 dias e um mínimo de 1 dia.");
- new fee;
- switch(MotelData[RentRoom[playerid]][MotelID])
- {
- case 1,4,5: fee = 100 * daystostay;
- case 2,7: fee = 200 * daystostay;
- case 3,8,9: fee = 500 * daystostay;
- case 6: fee = 150 * daystostay;
- }
- if(Cash[playerid] < fee) return SysMsg(playerid,"Você não tem dinheiro suficiente para estender a sua estadia aqui.");
- GivePlayerCash(playerid, -fee);
- MotelData[RentRoom[playerid]][RoomDaysLeft] += daystostay;
- MySQLUpdateInt(RentRoom[playerid], "RoomDaysLeft", MotelData[RentRoom[playerid]][RoomDaysLeft], "motel");
- SendClientMessageF(playerid,COLOR_GOLD,"Você ampliou a sua estadia por %i dias significa que agora Você tem %i dias restantes. O custo ?de $%i.", daystostay, MotelData[RentRoom[playerid]][RoomDaysLeft], fee);
- return true;
- }
- CMD:devolterquarto(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(RentRoom[playerid] == 0) return SysMsg(playerid,"Você não tem um quarto de motel.");
- new motel = GetMotelID(playerid);
- if(motel != MotelData[RentRoom[playerid]][MotelID]) return SysMsg(playerid,"Você não está perto do escritóio do motel para o checkout.");
- new ID = RentRoom[playerid];
- MotelData[ID][RoomOwner] = 0;
- RentRoom[playerid] = 0;
- MotelWaypoint[playerid] = 0;
- DestroyDynamicPickup(MotelData[ID][RoomPickupID]);
- if(MySpawnID[playerid] == 4)
- {
- MySpawnID[playerid] = 1;
- MySQLUpdateInt(SQLID[playerid], "MySpawnID", MySpawnID[playerid], "players");
- }
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE motel SET OwnerSQLID=0 AND RoomDaysLeft=0 AND Weapon=0 AND WeaponAmmo=0 WHERE id=%i", ID);
- mysql_pquery(conn, mquery, "UpdateMotelSign", "i", MotelData[ID][MotelID] - 1);
- SendClientMessage(playerid,COLOR_GOLD,"Você saiu deste motel. Obrigado!");
- return true;
- }
- CMD:escrevernota(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid,3.5,HouseData[h][oPosX],HouseData[h][oPosY],HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- if(HouseData[h][HouseOwnerSQLID] > 0)
- {
- if(strlen(HouseData[h][DoorNoteMessage]) > 1) return SysMsg(playerid,"Já existe uma nota nesta porta.");
- if(HasHouseKey[playerid][0] == h || HasHouseKey[playerid][1] == h) return SysMsg(playerid,"Você não pode colocar uma nota em sua própria porta.");
- if(isnull(params)) return SysMsg(playerid,"Use: /escrevernota [mensagem]");
- format(HouseData[h][DoorNoteMessage], 128, params);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE houses SET DoorNote = '%e' WHERE id = %i", HouseData[h][DoorNoteMessage], HouseData[h][HouseSQLID]);
- mysql_pquery(conn, mquery);
- format(gstr, sizeof(gstr),"* %s deixa uma carta com uma mensagem fixada na porta da casa. *", NameRP(playerid), HouseData[h][HouseDescription]);
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- SendClientMessageF(playerid,COLOR_GOLD,"Você deixou uma nota em %s.",HouseData[h][HouseDescription]);
- break;
- }
- else return SysMsg(playerid,"Esta propriedade nem sequer é comprada.");
- }
- }
- return true;
- }
- CMD:batenaporta(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- if(IsInHouseID[playerid] != -1) return SysMsg(playerid,"Você não pode bater uma porta de dentro de uma casa.");
- for(new h = 0; h < MAX_HOUSES; h++)
- {
- if(IsPlayerInRangeOfPoint(playerid, DOOR_PROXIMITY, HouseData[h][oPosX],HouseData[h][oPosY],HouseData[h][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[h][HouseExtVW])
- {
- if(HouseData[h][HouseOwnerSQLID] != 0)
- {
- foreach(new i: Player)
- {
- if(Logged{i})
- {
- if(IsInHouseID[i] == h)
- {
- SendClientMessageF(i, COLOR_EMOTE, "KNOCK KNOCK KNOCK ((%s))", NameRP(playerid), HouseData[h][HouseDescription]);
- }
- }
- }
- format(gstr, sizeof(gstr),"* %s bate na porta da casa. *", NameRP(playerid), HouseData[h][HouseDescription]);// exemplo bate na porta de Montgomery House
- ProxDetector(20.0, playerid, gstr, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE, COLOR_EMOTE);
- return true;
- }
- else return SysMsg(playerid,"Esta propriedade nem sequer é comprada.");
- }
- }
- SysMsg(playerid,"Você não está em uma porta da casa.");
- return true;
- }
- CMD:cquarto(playerid, params[])
- {
- if(IsPlayerAdmin(playerid))
- {
- if(isnull(params)) return SysMsg(playerid,"Use: /cquarto [motel id]");
- if(!IsNumeric(params)) return SysMsg(playerid,"A facção deve ser um número.");
- new motel = strval(params);
- if(motel < 1) return SysMsg(playerid,"ID do motel deve ser > 0");
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- MotelData[CurrentMotelEnumID][MotelID] = motel;
- MotelData[CurrentMotelEnumID][RoomX] = X;
- MotelData[CurrentMotelEnumID][RoomY] = Y;
- MotelData[CurrentMotelEnumID][RoomZ] = Z;
- MotelData[CurrentMotelEnumID][RoomLocked] = 0;
- MotelData[CurrentMotelEnumID][RoomOwner] = 0;
- mysql_format(conn, mquery, sizeof(mquery), "INSERT INTO motel (MotelID) VALUES (%i)", motel);
- mysql_pquery(conn, mquery);
- mysql_format(conn, mquery, sizeof(mquery), "UPDATE motel SET RoomLocked = 0, OwnerSQLID = 0, OutsideX = %f, OutsideY = %f, OutsideZ = %f WHERE id = %i", X, Y, Z, CurrentMotelEnumID);
- mysql_pquery(conn, mquery);
- CurrentMotelEnumID ++;
- SendClientMessageF(playerid,COLOR_GOLD, "Quarto de Motel criado: %i.", CurrentMotelEnumID);
- AdminLog(playerid, 0, "", "Criado novo quarto de Motel");
- }
- else return SysMsg(playerid, AUTHMSG);
- return true;
- }
- CMD:annoyingobject(playerid, params[])
- {
- if(!IsPlayerAdminLevelOK(playerid, 2)) return SysMsg(playerid, CMDFMSG);
- SysMsgF(playerid, "Objetos visíveis: %i. Total de objetos: %i", Streamer_CountVisibleItems(playerid, STREAMER_TYPE_OBJECT), CountDynamicObjects());
- SelectObject(playerid);
- SetPVarInt(playerid, "SelectingAnnoyingObject", 1);
- return true;
- }
- CMD:verrota(playerid, params[])
- {
- if(!Logged{playerid}) return true;
- new Float:x, Float:y, Float:z;
- gstr[0] = EOS;
- for(new i = 0; i < MAX_BUSSTOPS; i++)
- {
- GetDynamicObjectPos(BusStopObjectIDStart + i, x, y, z);
- if(IsPlayerInRangeOfPoint(playerid, 2.0, x, y, z))
- {
- strcat(gstr, "{4BB74C}Blueberry {FFFFFF}(Panoptican, Farm, BB Acres, Centro da Cidade)\n");
- strcat(gstr, "{4BB74C}Fort Carson {FFFFFF}(Estacionamento de trailers somente)\n");
- strcat(gstr, "{4BB74C}Las Barrancas\n");
- strcat(gstr, "{4BB74C}Tierra Robada\n");
- strcat(gstr, "{4BB74C}El Quebrados\n");
- strcat(gstr, "{4BB74C}Valle Ocultado\n");
- strcat(gstr, "{4BB74C}Las Payasdas\n");
- strcat(gstr, "{4BB74C}Hunter Quarry {FFFFFF}(via West Bone County)\n");
- strcat(gstr, "{4BB74C}Fort Carson {FFFFFF}(Estacionamento de trailers, Hospital, Centro da Cidade)\n");
- strcat(gstr, "{4BB74C}Hampton Barns\n");
- strcat(gstr, "{4BB74C}Montgomery {FFFFFF}(Hospital, Cabbie Co, Centro da Cidade, Casino)\n");
- strcat(gstr, "{4BB74C}Palomino Creek {FFFFFF}(Main Street, Bank)\n");
- strcat(gstr, "{4BB74C}Dillimore {FFFFFF}(via Montgomery Cutoff)\n");
- strcat(gstr, "{4BB74C}Sul de Blueberry {FFFFFF}(Panoptican, Farm, BB Acres)\n");
- strcat(gstr, "{4BB74C}Estação de onibus");
- Dialog_Show(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Rota do onibus", gstr, "OK", "");
- break;
- }
- }
- return true;
- }
- CMD:licencainfo(playerid)
- {
- if(!IsPlayerInRangeOfPoint(playerid, 2.5, 1239.9242, 185.4836, 2091.3547)) return true;
- gstr[0] = EOS;
- strcat(gstr, "Durante um teste de condução, você terá que seguir uma determinada rota de um checkpoint a outro checkpoint, preste ATENÇÃO aos LIMITES de velocidade e mantendo seu carro intacto.\n");
- strcat(gstr, "O DMV está localizado em Montgomery, ao lado do parque de trailers. (( Use /gps para encontrar a sua localização. )) Lá você pode obter as seguintes licença:\n\n");
- strcat(gstr, "- Licença Geral de Veículos [GVL-1] A licença custa $100. O veículo que você usado é um admiral, não ultrapasse a velocidade permitida e não bata o veiculo, fique atento ao tempo se quiser passar.\n");
- strcat(gstr, "- Licença de veículo grande [GVL-2] A licença custa $3.000. O veículo que você usa é um Mule, não ultrapasse a velocidade permitida e não bata o veiculo, fique atento ao tempo se quiser passar..\n");
- strcat(gstr, "- Licença de moto [MB] A licença custa $2,500. A moto que você usa é um Sanchez, não ultrapasse a velocidade permitida e não caia da Moto, fique atento ao tempo se quiser passar.\n");
- strcat(gstr, "- Licença de Barco [B ]A licença custa $4,000. O barco que você usa é um Guarda Costeira, não ultrapasse a velocidade permitida, fique atento ao tempo se quiser passar.\n");
- strcat(gstr, "- Licença de helicóptero [A1] A licença custa $15,000. O helicóptero que você usa é um Pardal, não ultrapasse a velocidade permitida e não danifique o helicóptero, fique atento ao tempo se quiser passar.\n");
- strcat(gstr, "- Licença de avião [A2] A licença custa $25,000. O avião que você usa é um Dodo, não ultrapasse a velocidade permitida e não bata o veiculo, fique atento ao tempo se quiser passar.\n");
- ShowMessage(playerid, "Informação de Licença", gstr, "Fechar!");
- return true;
- }
- CMD:info(playerid)
- {
- if(!IsPlayerInRangeOfPoint(playerid, 2.5, 1234.6780, 180.5994, 2091.3687)) return true;
- gstr[0] = EOS;
- strcat(gstr, "O que você pode fazer no Centro de Informação?\n");
- strcat(gstr, "- Saque dinheiro da sua conta bancária através de um caixa eletrônico (ATM)\n");
- strcat(gstr, "- Ligue para uma pessoa ou uma linha direta através de um celular público\n");
- strcat(gstr, "- Procure números de celular importantes\n");
- strcat(gstr, "- Descubra como obter uma carteira de motorista\n");
- strcat(gstr, "- Alugue um veículo\n");
- strcat(gstr, "- Publique um anúncio no rádio SAN Network Rádio\n");
- strcat(gstr, "- Encontre um endereço ou um Ponto de Interesse localizado no Condado de Red, Bone ou Flint County\n");
- strcat(gstr, "- Veja uma lista de empregos a tempo inteiro e a tempo parcial disponíveis para você\n");
- strcat(gstr, "- Descarte o seu veículo no lote de carros usados e coloque-o para venda\n");
- strcat(gstr, "- Obter-se contratado como taxista no Cabbie Co\n");
- strcat(gstr, "- Veja um mapa de todos os locais-chave em San Andreas)\n");
- ShowMessage(playerid, "Centro de informações", gstr, "Fechar!");
- return true;
- }
- CMD:vendainfo(playerid)
- {
- if(!IsPlayerInRangeOfPoint(playerid, 2.5, 1226.7029, 164.5297, 2086.6648)) return true;
- gstr[0] = EOS;
- strcat(gstr, "Em primeiro lugar, você deve visitar qualquer loja geral e comprar uma caneta e um papel. Depois disso, entre em seu veículo e use '/colocaravenda PREÇO', por exemplo '/colocaravenda 5000'.\n");
- strcat(gstr, "Certifique-se de estacionar o seu veículo em qualquer lugar visível, use /savecar para fazê-lo. Mantenha o celular ligado, você pode receber ligação de alguém interessado em seu veículo.\n");
- strcat(gstr, "Se você mudar de idéia e desejar cancelar a venda, use /cancelarvenda.");
- ShowMessage(playerid, "Lote de vendas de carros usados", gstr, "Fechar!");
- return true;
- }
- CMD:alugarvinfo(playerid)
- {
- if(!IsPlayerInRangeOfPoint(playerid, 2.5, 1242.5016, 164.4828, 2086.6648)) return true;
- gstr[0] = EOS;
- strcat(gstr, "Temos alguns veículos que podem ser alugados. Aqui está uma lista deles junto com seus preços:\n\n");
- strcat(gstr, "- Willard - $650\n");
- strcat(gstr, "- Admiral - $750\n");
- strcat(gstr, "- Manana- $350\n");
- strcat(gstr, "- Cadrona - $350\n");
- strcat(gstr, "- Rancher - $1000\n");
- strcat(gstr, "- Previon - $350\n");
- strcat(gstr, "- Reefer - $1000 (localizado na baía de Palomino Creek)\n");
- strcat(gstr, "- Tropic - $1500 (localizado na baía de Palomino Creek)\n\n");
- strcat(gstr, "Se você deseja alugar um veículo, simplesmente escolha o que mais gosta, então insira-o e use /alugarveiculo.\n");
- strcat(gstr, "Você será cobrado um determinado preço e você pagará novamente a cada hora. Quando você decide retornar o veículo, volte para a garagem e use /devolverveiculo.\n");
- strcat(gstr, "Se você danificou o veículo, você será cobrado adicionalmente pelos reparos.\n");
- ShowMessage(playerid, "Red County Aluguel de carros", gstr, "Fechar!");
- return true;
- }
|