123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788197891979019791197921979319794197951979619797197981979919800198011980219803198041980519806198071980819809198101981119812198131981419815198161981719818198191982019821198221982319824198251982619827198281982919830198311983219833198341983519836198371983819839198401984119842198431984419845198461984719848198491985019851198521985319854198551985619857198581985919860198611986219863198641986519866198671986819869198701987119872198731987419875198761987719878198791988019881198821988319884198851988619887198881988919890198911989219893198941989519896198971989819899199001990119902199031990419905199061990719908199091991019911199121991319914199151991619917199181991919920199211992219923199241992519926199271992819929199301993119932199331993419935199361993719938199391994019941199421994319944199451994619947199481994919950199511995219953199541995519956199571995819959199601996119962199631996419965199661996719968199691997019971199721997319974199751997619977199781997919980199811998219983199841998519986199871998819989199901999119992199931999419995199961999719998199992000020001200022000320004200052000620007200082000920010200112001220013200142001520016200172001820019200202002120022200232002420025200262002720028200292003020031200322003320034200352003620037200382003920040200412004220043200442004520046200472004820049200502005120052200532005420055200562005720058200592006020061200622006320064200652006620067200682006920070200712007220073200742007520076200772007820079200802008120082200832008420085200862008720088200892009020091200922009320094200952009620097200982009920100201012010220103201042010520106201072010820109201102011120112201132011420115201162011720118201192012020121201222012320124201252012620127201282012920130201312013220133201342013520136201372013820139201402014120142201432014420145201462014720148201492015020151201522015320154201552015620157201582015920160201612016220163201642016520166201672016820169201702017120172201732017420175201762017720178201792018020181201822018320184201852018620187201882018920190201912019220193201942019520196201972019820199202002020120202202032020420205202062020720208202092021020211202122021320214202152021620217202182021920220202212022220223202242022520226202272022820229202302023120232202332023420235202362023720238202392024020241202422024320244202452024620247202482024920250202512025220253202542025520256202572025820259202602026120262202632026420265202662026720268202692027020271202722027320274202752027620277202782027920280202812028220283202842028520286202872028820289202902029120292202932029420295202962029720298202992030020301203022030320304203052030620307203082030920310203112031220313203142031520316203172031820319203202032120322203232032420325203262032720328203292033020331203322033320334203352033620337203382033920340203412034220343203442034520346203472034820349203502035120352203532035420355203562035720358203592036020361203622036320364203652036620367203682036920370203712037220373203742037520376203772037820379203802038120382203832038420385203862038720388203892039020391203922039320394203952039620397203982039920400204012040220403204042040520406204072040820409204102041120412204132041420415204162041720418204192042020421204222042320424204252042620427204282042920430204312043220433204342043520436204372043820439204402044120442204432044420445204462044720448204492045020451204522045320454204552045620457204582045920460204612046220463204642046520466204672046820469204702047120472204732047420475204762047720478204792048020481204822048320484204852048620487204882048920490204912049220493204942049520496204972049820499205002050120502205032050420505205062050720508205092051020511205122051320514205152051620517205182051920520205212052220523205242052520526205272052820529205302053120532205332053420535205362053720538205392054020541205422054320544205452054620547205482054920550205512055220553205542055520556205572055820559205602056120562205632056420565205662056720568205692057020571205722057320574205752057620577205782057920580205812058220583205842058520586205872058820589205902059120592205932059420595205962059720598205992060020601206022060320604206052060620607206082060920610206112061220613206142061520616206172061820619206202062120622206232062420625206262062720628206292063020631206322063320634206352063620637206382063920640206412064220643206442064520646206472064820649206502065120652206532065420655206562065720658206592066020661206622066320664206652066620667206682066920670206712067220673206742067520676206772067820679206802068120682206832068420685206862068720688206892069020691206922069320694206952069620697206982069920700207012070220703207042070520706207072070820709207102071120712207132071420715207162071720718207192072020721207222072320724207252072620727207282072920730207312073220733207342073520736207372073820739207402074120742207432074420745207462074720748207492075020751207522075320754207552075620757207582075920760207612076220763207642076520766207672076820769207702077120772207732077420775207762077720778207792078020781207822078320784207852078620787207882078920790207912079220793207942079520796207972079820799208002080120802208032080420805208062080720808208092081020811208122081320814208152081620817208182081920820208212082220823208242082520826208272082820829208302083120832208332083420835208362083720838208392084020841208422084320844208452084620847208482084920850208512085220853208542085520856208572085820859208602086120862208632086420865208662086720868208692087020871208722087320874208752087620877208782087920880208812088220883208842088520886208872088820889208902089120892208932089420895208962089720898208992090020901209022090320904209052090620907209082090920910209112091220913209142091520916209172091820919209202092120922209232092420925209262092720928209292093020931209322093320934209352093620937209382093920940209412094220943209442094520946209472094820949209502095120952209532095420955209562095720958209592096020961209622096320964209652096620967209682096920970209712097220973209742097520976209772097820979209802098120982 |
- declare module cc {
-
- export var container: HTMLDivElement;
-
- export function _initDebugSetting(mode: DebugMode): void;
-
- export function error(msg: any, ...subst: any[]): void;
-
- export function warn(msg: any, ...subst: any[]): void;
-
- export function log(msg: string|any, ...subst: any[]): void;
-
- export function info(msg: any, ...subst: any[]): void;
-
- export var ENGINE_VERSION: string;
-
- export function speed(action: ActionInterval, speed: number): Action;
-
- export function follow(followedNode: Node, rect: Rect): Action;
-
- export function setPoints(points: any[]): void;
-
- export function cardinalSplineTo(duration: number, points: any[], tension: number): ActionInterval;
-
- export function updatePosition(newPos: Vec2): void;
-
- export function cardinalSplineBy(duration: number, points: any[], tension: number): ActionInterval;
-
- export function catmullRomTo(dt: number, points: any[]): ActionInterval;
-
- export function catmullRomBy(dt: number, points: any[]): ActionInterval;
-
- export function easeIn(rate: number): any;
-
- export function easeOut(rate: number): any;
-
- export function easeInOut(rate: number): any;
-
- export function easeExponentialIn(): any;
-
- export function easeExponentialOut(): any;
-
- export function easeExponentialInOut(): any;
-
- export function easeSineIn(): any;
-
- export function easeSineOut(): any;
-
- export function easeSineInOut(): any;
-
- export function easeElasticIn(period: number): any;
-
- export function easeElasticOut(period: number): any;
-
- export function easeElasticInOut(period: number): any;
-
- export function easeBounceIn(): any;
-
- export function easeBounceOut(): any;
-
- export function easeBounceInOut(): any;
-
- export function easeBackIn(): any;
-
- export function easeBackOut(): any;
-
- export function easeBackInOut(): any;
-
- export function easeBezierAction(p0: number, p1: number, p2: number, p3: number): any;
-
- export function easeQuadraticActionIn(): any;
-
- export function easeQuadraticActionOut(): any;
-
- export function easeQuadraticActionInOut(): any;
-
- export function easeQuarticActionIn(): any;
-
- export function easeQuarticActionOut(): any;
-
- export function easeQuarticActionInOut(): any;
-
- export function easeQuinticActionIn(): any;
-
- export function easeQuinticActionOut(): any;
-
- export function easeQuinticActionInOut(): any;
-
- export function easeCircleActionIn(): any;
-
- export function easeCircleActionOut(): any;
-
- export function easeCircleActionInOut(): any;
-
- export function easeCubicActionIn(): any;
-
- export function easeCubicActionOut(): any;
-
- export function easeCubicActionInOut(): any;
-
- export function show(): ActionInstant;
-
- export function hide(): ActionInstant;
-
- export function toggleVisibility(): ActionInstant;
-
- export function removeSelf(isNeedCleanUp ?: boolean): ActionInstant;
-
- export function flipX(flip: boolean): ActionInstant;
-
- export function flipY(flip: boolean): ActionInstant;
-
- export function place(pos: Vec2|number, y?: number): ActionInstant;
-
- export function callFunc(selector: Function, selectorTarget?: any, data?: any): ActionInstant;
-
- export function sequence(actionOrActionArray: FiniteTimeAction|FiniteTimeAction[], ...tempArray: FiniteTimeAction[]): ActionInterval;
-
- export function repeat(action: FiniteTimeAction, times: number): ActionInterval;
-
- export function repeatForever(action: FiniteTimeAction): ActionInterval;
-
- export function spawn(actionOrActionArray: FiniteTimeAction|FiniteTimeAction[], ...tempArray: FiniteTimeAction[]): FiniteTimeAction;
-
- export function rotateTo(duration: number, deltaAngleX: number, deltaAngleY?: number): ActionInterval;
-
- export function rotateBy(duration: number, deltaAngleX: number, deltaAngleY?: number): ActionInterval;
-
- export function moveBy(duration: number, deltaPos: Vec2|number, deltaY?: number): ActionInterval;
-
- export function moveTo(duration: number, position: Vec2|number, y?: number): ActionInterval;
-
- export function skewTo(t: number, sx: number, sy: number): ActionInterval;
-
- export function skewBy(t: number, sx: number, sy: number): ActionInterval;
-
- export function jumpBy(duration: number, position: Vec2|number, y?: number, height?: number, jumps?: number): ActionInterval;
-
- export function jumpTo(duration: number, position: Vec2|number, y?: number, height?: number, jumps?: number): ActionInterval;
-
- export function bezierBy(t: number, c: Vec2[]): ActionInterval;
-
- export function bezierTo(t: number, c: Vec2[]): ActionInterval;
-
- export function scaleTo(duration: number, sx: number, sy?: number): ActionInterval;
-
- export function scaleBy(duration: number, sx: number, sy?: number|void): ActionInterval;
-
- export function blink(duration: number, blinks: number): ActionInterval;
-
- export function fadeTo(duration: number, opacity: number): ActionInterval;
-
- export function fadeIn(duration: number): ActionInterval;
-
- export function fadeOut(d: number): ActionInterval;
-
- export function tintTo(duration: number, red: number, green: number, blue: number): ActionInterval;
-
- export function tintBy(duration: number, deltaRed: number, deltaGreen: number, deltaBlue: number): ActionInterval;
-
- export function delayTime(d: number): ActionInterval;
-
- export function reverseTime(action: FiniteTimeAction): ActionInterval;
-
- export function targetedAction(target: Node, action: FiniteTimeAction): ActionInterval;
-
- export var view: View;
-
- export var director: Director;
-
- export var winSize: Size;
- export var game: Game;
-
- export var systemEvent: SystemEvent;
-
- export function handleTouchesBegin(touches: any[]): void;
-
- export function handleTouchesMove(touches: any[]): void;
-
- export function handleTouchesEnd(touches: any[]): void;
-
- export function handleTouchesCancel(touches: any[]): void;
-
- export function getSetOfTouchesEndOrCancel(touches: any[]): any[];
-
- export function getHTMLElementPosition(element: HTMLElement): any;
-
- export function getPreTouch(touch: Touch): Touch;
-
- export function setPreTouch(touch: Touch): void;
-
- export function getTouchByXY(tx: number, ty: number, pos: Vec2): Touch;
-
- export function getPointByEvent(event: Touch, pos: Vec2): Vec2;
-
- export function getTouchesByEvent(event: Touch, pos: Vec2): any[];
-
- export function registerSystemEvent(element: HTMLElement): void;
-
- export function Class(options?: {name?: string; extends?: Function; ctor?: Function; __ctor__?: Function; properties?: any; statics?: any; mixins?: Function[]; editor?: {executeInEditMode?: boolean; requireComponent?: Function; menu?: string; executionOrder?: number; disallowMultiple?: boolean; playOnFocus?: boolean; inspector?: string; icon?: string; help?: string; }; update?: Function; lateUpdate?: Function; onLoad?: Function; start?: Function; onEnable?: Function; onDisable?: Function; onDestroy?: Function; onFocusInEditor?: Function; onLostFocusInEditor?: Function; resetInEditor?: Function; onRestore?: Function; _getLocalBounds?: Function; }): Function;
-
- export function isChildClassOf(subclass: Function, superclass: Function): boolean;
-
- export function Enum<T>(obj: T): T;
-
- export function setAccelerometerEnabled(isEnable: boolean): void;
-
- export function setAccelerometerInterval(interval: number): void;
-
- export function handleTouchesBegin(touches: any[]): void;
-
- export function handleTouchesMove(touches: any[]): void;
-
- export function handleTouchesEnd(touches: any[]): void;
-
- export function handleTouchesCancel(touches: any[]): void;
-
- export function getSetOfTouchesEndOrCancel(touches: any[]): any[];
-
- export function getHTMLElementPosition(element: HTMLElement): any;
-
- export function getPreTouch(touch: Touch): Touch;
-
- export function setPreTouch(touch: Touch): void;
-
- export function getTouchByXY(tx: number, ty: number, pos: Vec2): Touch;
-
- export function getTouchByXY(location: Vec2, pos: Vec2, eventType: number): Event.EventMouse;
-
- export function getPointByEvent(event: Touch, pos: Vec2): Vec2;
-
- export function getTouchesByEvent(event: Touch, pos: Vec2): any[];
-
- export function registerSystemEvent(element: HTMLElement): void;
-
- export function update(dt: number): void;
-
- export function lerp(a: number, b: number, r: number): number;
-
- export function rand(): number;
-
- export function randomMinus1To1(): number;
-
- export function random0To1(): number;
-
- export function degreesToRadians(angle: number): number;
-
- export function radiansToDegrees(angle: number): number;
-
- export function nodeDrawSetup(node: Node): void;
-
- export function incrementGLDraws(addNumber: number): void;
-
- export function checkGLErrorDebug(): void;
-
- export function isValid(value: any, strictMode?: boolean): boolean;
-
- export var Integer: string;
-
- export var Float: string;
-
- export var Boolean: string;
-
- export var String: string;
-
- export function deserialize(data: string|any, details?: Details, options?: any): any;
-
- export function instantiate(original: Prefab): Node;
- export function instantiate<T>(original: T): T;
-
- export function find(path: string, referenceNode?: Node): Node;
-
- export function color(r?: number, g?: number, b?: number, a?: number): Color;
-
- export function colorEqual(color1: Color, color2: Color): boolean;
-
- export function hexToColor(hex: string): Color;
-
- export function colorToHex(color: Color): string;
-
- export function pNeg(point: Vec2): Vec2;
-
- export function pAdd(v1: Vec2, v2: Vec2): Vec2;
-
- export function pSub(v1: Vec2, v2: Vec2): Vec2;
-
- export function pMult(point: Vec2, floatVar: number): Vec2;
-
- export function pMidpoint(v1: Vec2, v2: Vec2): Vec2;
-
- export function pDot(v1: Vec2, v2: Vec2): number;
-
- export function pCross(v1: Vec2, v2: Vec2): number;
-
- export function pPerp(point: Vec2): Vec2;
-
- export function pRPerp(point: Vec2): Vec2;
-
- export function pProject(v1: Vec2, v2: Vec2): Vec2;
-
- export function pLengthSQ(v: Vec2): number;
-
- export function pDistanceSQ(point1: Vec2, point2: Vec2): number;
-
- export function pLength(v: Vec2): number;
-
- export function pDistance(v1: Vec2, v2: Vec2): number;
-
- export function pNormalize(v: Vec2): Vec2;
-
- export function pForAngle(a: number): Vec2;
-
- export function pToAngle(v: Vec2): number;
-
- export function clampf(value: number, min_inclusive: number, max_inclusive: number): number;
-
- export function clamp01(value: number): number;
-
- export function pClamp(p: Vec2, min_inclusive: Vec2, max_inclusive: Vec2): Vec2;
-
- export function pFromSize(s: Size): Vec2;
-
- export function pCompOp(p: Vec2, opFunc: Function): Vec2;
-
- export function pLerp(a: Vec2, b: Vec2, alpha: number): Vec2;
-
- export function pFuzzyEqual(a: Vec2, b: Vec2, variance: number): boolean;
-
- export function pCompMult(a: Vec2, b: Vec2): Vec2;
-
- export function pAngleSigned(a: Vec2, b: Vec2): number;
-
- export function pAngle(a: Vec2, b: Vec2): number;
-
- export function pRotateByAngle(v: Vec2, pivot: Vec2, angle: number): Vec2;
-
- export function pLineIntersect(A: Vec2, B: Vec2, C: Vec2, D: Vec2, retP: Vec2): boolean;
-
- export function pSegmentIntersect(A: Vec2, B: Vec2, C: Vec2, D: Vec2): boolean;
-
- export function pIntersectPoint(A: Vec2, B: Vec2, C: Vec2, D: Vec2): Vec2;
-
- export function pSameAs(A: Vec2, B: Vec2): boolean;
-
- export function pZeroIn(v: Vec2): void;
-
- export function pIn(v1: Vec2, v2: Vec2): void;
-
- export function pMultIn(point: Vec2, floatVar: number): void;
-
- export function pSubIn(v1: Vec2, v2: Vec2): void;
-
- export function pAddIn(v1: Vec2, v2: Vec2): void;
-
- export function pNormalizeIn(v: Vec2): void;
-
- export function rect(x?: number, y?: number, w?: number, h?: number): Rect;
-
- export function rectEqualToRect(rect1: Rect, rect2: Rect): boolean;
-
- export function rectContainsRect(rect1: Rect, rect2: Rect): boolean;
-
- export function rectGetMaxX(rect: Rect): number;
-
- export function rectGetMidX(rect: Rect): number;
-
- export function rectGetMinX(rect: Rect): number;
-
- export function rectGetMaxY(rect: Rect): number;
-
- export function rectGetMidY(rect: Rect): number;
-
- export function rectGetMinY(rect: Rect): number;
-
- export function rectContainsPoint(rect: Rect, point: Vec2): boolean;
-
- export function rectIntersectsRect(rectA: Rect, rectB: Rect): boolean;
-
- export function rectOverlapsRect(rectA: Rect, rectB: Rect): boolean;
-
- export function rectUnion(rectA: Rect, rectB: Rect): Rect;
-
- export function rectIntersection(rectA: Rect, rectB: Rect): Rect;
-
- export function size(w: number|Size, h?: number): Size;
-
- export function sizeEqualToSize(size1: Size, size2: Size): boolean;
- export function V3F_C4B_T2F_QuadZero(): V3F_C4B_T2F_Quad;
-
- export function V3F_C4B_T2F_QuadCopy(sourceQuad: V3F_C4B_T2F_Quad): V3F_C4B_T2F_Quad;
-
- export function V3F_C4B_T2F_QuadsCopy(sourceQuads: any[]): any[];
-
- export function v2(x?: number|any, y?: number): Vec2;
-
- export function p(x?: number|any, y?: number): Vec2;
-
- export function pointEqualToPoint(point1: Vec2, point2: Vec2): boolean;
-
- export enum DebugMode {
- NONE = 0,
- INFO = 0,
- WARN = 0,
- ERROR = 0,
- INFO_FOR_WEB_PAGE = 0,
- WARN_FOR_WEB_PAGE = 0,
- ERROR_FOR_WEB_PAGE = 0,
- }
-
- export class Action {
-
- clone(): Action;
-
- isDone(): boolean;
-
- getTarget(): Node;
-
- setTarget(target: Node): void;
-
- getOriginalTarget(): Node;
-
- getTag(): number;
-
- setTag(tag: number): void;
-
- static TAG_INVALID: number;
- }
-
- export class FiniteTimeAction extends Action {
-
- getDuration(): number;
-
- setDuration(duration: number): void;
-
- reverse(): void;
-
- clone(): FiniteTimeAction;
- }
-
- export class ActionEase extends ActionInterval {
- }
-
- export class EaseRateAction extends ActionEase {
- }
-
- export class EaseElastic extends ActionEase {
- }
-
- export class EaseBounce extends ActionEase {
- }
-
- export class ActionInstant extends FiniteTimeAction {
- }
-
- export class ActionInterval extends FiniteTimeAction {
-
- easing(easeObj: any): ActionInterval;
-
- repeat(times: number): ActionInterval;
-
- repeatForever(): ActionInterval;
- }
-
- export class ActionManager {
-
- addAction(action: Action, target: Node, paused: boolean): void;
-
- removeAllActions(): void;
-
- removeAllActionsFromTarget(target: Node, forceDelete: boolean): void;
-
- removeAction(action: Action): void;
-
- removeActionByTag(tag: number, target: Node): void;
-
- getActionByTag(tag: number, target: Node): Action;
-
- getNumberOfRunningActionsInTarget(target: Node): number;
-
- pauseTarget(target: Node): void;
-
- resumeTarget(target: Node): void;
-
- pauseAllRunningActions(): any[];
-
- resumeTargets(targetsToResume: any[]): void;
-
- pauseTargets(targetsToPause: any[]): void;
-
- purgeSharedManager(): void;
-
- update(dt: number): void;
- }
-
- export class Director extends EventTarget {
-
- convertToUI(glPoint: Vec2): Vec2;
-
- getWinSize(): Size;
-
- getWinSizeInPixels(): Size;
-
- getVisibleSize(): Size;
-
- getVisibleOrigin(): Vec2;
-
- pause(): void;
-
- runSceneImmediate(scene: Scene, onBeforeLoadScene?: Function, onLaunched?: Function): void;
-
- loadScene(sceneName: string, onLaunched?: Function): boolean;
-
- preloadScene(sceneName: string, onLoaded?: (error: Error) => void): void;
-
- resume(): void;
-
- setDepthTest(on: boolean): void;
-
- setClearColor(clearColor: Color): void;
-
- setProjection(projection: number): void;
-
- setViewport(): void;
-
- getProjection(): number;
-
- setAlphaBlending(on: boolean): void;
-
- isSendCleanupToScene(): boolean;
-
- getScene(): Scene;
-
- getAnimationInterval(): number;
-
- isDisplayStats(): boolean;
-
- setDisplayStats(displayStats: boolean): void;
-
- isNextDeltaTimeZero(): boolean;
-
- isPaused(): boolean;
-
- getTotalFrames(): number;
-
- getScheduler(): Scheduler;
-
- setScheduler(scheduler: Scheduler): void;
-
- getActionManager(): ActionManager;
-
- setActionManager(actionManager: ActionManager): void;
-
- getCollisionManager(): CollisionManager;
-
- getPhysicsManager(): PhysicsManager;
-
- getDeltaTime(): number;
-
- static EVENT_PROJECTION_CHANGED: string;
-
- static EVENT_BEFORE_SCENE_LOADING: string;
-
- static EVENT_BEFORE_SCENE_LAUNCH: string;
-
- static EVENT_AFTER_SCENE_LAUNCH: string;
-
- static EVENT_BEFORE_UPDATE: string;
-
- static EVENT_AFTER_UPDATE: string;
-
- static EVENT_BEFORE_VISIT: string;
-
- static EVENT_AFTER_VISIT: string;
-
- static EVENT_AFTER_DRAW: string;
-
- static PROJECTION_2D: number;
-
- static PROJECTION_3D: number;
-
- static PROJECTION_CUSTOM: number;
-
- static PROJECTION_DEFAULT: number;
- }
-
- export class Game extends EventTarget {
-
- EVENT_HIDE: string;
-
- EVENT_SHOW: string;
-
- EVENT_GAME_INITED: string;
-
- EVENT_RENDERER_INITED: string;
-
- CONFIG_KEY: any;
-
- frame: any;
-
- container: HTMLDivElement;
-
- canvas: HTMLCanvasElement;
-
- config: any;
-
- onStart(): void;
-
- setFrameRate(frameRate: number): void;
-
- step(): void;
-
- pause(): void;
-
- resume(): void;
-
- isPaused(): boolean;
-
- restart(): void;
-
- end(): void;
-
- prepare(cb: Function): void;
-
- run(config?: any|Function, onStart?: Function): void;
-
- addPersistRootNode(node: Node): void;
-
- removePersistRootNode(node: Node): void;
-
- isPersistRootNode(node: Node): boolean;
- }
-
- export class Node extends _BaseNode {
-
- groupIndex: number;
-
- group: string;
-
- position: Vec2;
-
- x: number;
-
- y: number;
-
- rotation: number;
-
- rotationX: number;
-
- rotationY: number;
-
- scaleX: number;
-
- scaleY: number;
-
- skewX: number;
-
- skewY: number;
-
- opacity: number;
-
- cascadeOpacity: boolean;
-
- color: Color;
-
- anchorX: number;
-
- anchorY: number;
-
- width: number;
-
- height: number;
-
- zIndex: number;
-
- constructor(name?: string);
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- pauseSystemEvents(recursive: boolean): void;
-
- resumeSystemEvents(recursive: boolean): void;
-
- runAction(action: Action): Action;
-
- pauseAllActions(): void;
-
- resumeAllActions(): void;
-
- stopAllActions(): void;
-
- stopAction(action: Action): void;
-
- stopActionByTag(tag: number): void;
-
- getActionByTag(tag: number): Action;
-
- getNumberOfRunningActions(): number;
-
- getPosition(): Vec2;
-
- setPosition(newPosOrX: Vec2|number, y?: number): void;
-
- getScale(): number;
-
- setScale(scaleX: number|Vec2, scaleY?: number): void;
-
- getContentSize(ignoreSizeProvider?: boolean): Size;
-
- setContentSize(size: Size|number, height?: number): void;
-
- setOpacityModifyRGB(opacityValue: boolean): void;
-
- isOpacityModifyRGB(): boolean;
-
- getAnchorPoint(): Vec2;
-
- setAnchorPoint(point: Vec2|number, y?: number): void;
-
- getAnchorPointInPoints(): Vec2;
-
- getDisplayedOpacity(): number;
-
- getDisplayedColor(): Color;
-
- getNodeToParentTransformAR(): AffineTransform;
-
- getBoundingBox(): Rect;
-
- getBoundingBoxToWorld(): Rect;
-
- getNodeToParentTransform(): AffineTransform;
-
- getNodeToWorldTransform(): AffineTransform;
-
- getNodeToWorldTransformAR(): AffineTransform;
-
- getParentToNodeTransform(): AffineTransform;
-
- getWorldToNodeTransform(): AffineTransform;
-
- convertToNodeSpace(worldPoint: Vec2): Vec2;
-
- convertToWorldSpace(nodePoint: Vec2): Vec2;
-
- convertToNodeSpaceAR(worldPoint: Vec2): Vec2;
-
- convertToWorldSpaceAR(nodePoint: Vec2): Vec2;
-
- convertTouchToNodeSpace(touch: Touch): Vec2;
-
- convertTouchToNodeSpaceAR(touch: Touch): Vec2;
-
- addChild(child: Node, localZOrder?: number, tag?: number|string): void;
-
- cleanup(): void;
-
- sortAllChildren(): void;
-
- scale: number;
-
- getPositionX(): number;
-
- setPositionX(x: number): void;
-
- getPositionY(): number;
-
- setPositionY(y: number): void;
-
- getLocalZOrder(): number;
-
- setLocalZOrder(localZOrder: number): void;
-
- isCascadeOpacityEnabled(): boolean;
-
- setCascadeOpacityEnabled(cascadeOpacityEnabled: boolean): void;
- }
-
- export class Scene extends Node {
-
- autoReleaseAssets: boolean;
- }
-
- export class Scheduler {
-
- setTimeScale(timeScale: number): void;
-
- getTimeScale(): number;
-
- update(dt: number): void;
-
- scheduleCallbackForTarget(target: any, callback: Function, interval: number, repeat: number, delay: number, paused?: boolean): void;
- scheduleCallbackForTarget(target: any, callback: Function, interval: number, paused?: boolean): void;
-
- schedule(callback: Function, target: any, interval: number, repeat: number, delay: number, paused?: boolean): void;
- schedule(callback: Function, target: any, interval: number, paused?: boolean): void;
-
- scheduleUpdate(target: any, priority: number, paused: boolean, updateFunc: Function): void;
-
- unschedule(callback: Function, target: any): void;
-
- unscheduleUpdate(target: any): void;
-
- unscheduleAllForTarget(target: any): void;
-
- unscheduleAll(): void;
-
- unscheduleAllWithMinPriority(minPriority: number): void;
-
- isScheduled(callback: Function, target: any): boolean;
-
- pauseAllTargets(): void;
-
- pauseAllTargetsWithMinPriority(minPriority: number): void;
-
- resumeTargets(targetsToResume: any[]): void;
-
- pauseTarget(target: any): void;
-
- resumeTarget(target: any): void;
-
- isTargetPaused(target: any): boolean;
-
- scheduleUpdateForTarget(target: any, priority: number, paused: boolean): void;
-
- unscheduleCallbackForTarget(target: any, callback: Function): void;
-
- unscheduleUpdateForTarget(target: any): void;
-
- unscheduleAllCallbacksForTarget(target: any): void;
-
- unscheduleAllCallbacks(): void;
-
- unscheduleAllCallbacksWithMinPriority(minPriority: number): void;
-
- static PRIORITY_SYSTEM: number;
-
- static PRIORITY_NON_SYSTEM: number;
- }
-
- export class audioEngine {
-
- static play(clip: AudioClip, loop: boolean, volume: number): number;
-
- static setLoop(audioID: number, loop: boolean): void;
-
- static isLoop(audioID: number): boolean;
-
- static setVolume(audioID: number, volume: number): void;
-
- static getVolume(audioID: number): number;
-
- static setCurrentTime(audioID: number, sec: number): boolean;
-
- static getCurrentTime(audioID: number): number;
-
- static getDuration(audioID: number): number;
-
- static getState(audioID: number): audioEngine.AudioState;
-
- static setFinishCallback(audioID: number, callback: Function): void;
-
- static pause(audioID: number): void;
-
- static pauseAll(): void;
-
- static resume(audioID: number): void;
-
- static resumeAll(): void;
-
- static stop(audioID: number): void;
-
- static stopAll(): void;
-
- static setMaxAudioInstance(num: number): void;
-
- static getMaxAudioInstance(): number;
-
- static uncache(clip: AudioClip): void;
-
- static uncacheAll(): void;
-
- static preload(filePath: string, callback?: Function): void;
-
- static setMaxWebAudioSize(kb: number): void;
-
- static playMusic(clip: AudioClip, loop: boolean): number;
-
- static stopMusic(): void;
-
- static pauseMusic(): void;
-
- static resumeMusic(): void;
-
- static getMusicVolume(): number;
-
- static setMusicVolume(volume: number): void;
-
- static isMusicPlaying(): boolean;
-
- static playEffect(clip: AudioClip, loop: boolean): number;
-
- static setEffectsVolume(volume: number): void;
-
- static getEffectsVolume(): number;
-
- static pauseEffect(audioID: number): void;
-
- static pauseAllEffects(): void;
-
- static resumeEffect(audioID: number): void;
-
- static resumeAllEffects(): void;
-
- static stopEffect(audioID: number): void;
-
- static stopAllEffects(): void;
- }
-
- export class MotionStreak extends Component {
-
- preview: boolean;
-
- fadeTime: number;
-
- minSeg: number;
-
- stroke: number;
-
- texture: Texture2D;
-
- color: Color;
-
- fastMode: boolean;
-
- reset(): void;
- }
-
- export class AnimationClip extends Asset {
-
- duration: number;
-
- sample: number;
-
- speed: number;
-
- wrapMode: WrapMode;
-
- curveData: any;
-
- events: {frame: number, func: string, params: string[]}[];
-
- static createWithSpriteFrames(spriteFrames: [SpriteFrame], sample: number): AnimationClip;
- }
-
- export class AnimationState extends Playable {
-
- constructor(clip: AnimationClip, name?: string);
- animator: AnimationAnimator;
-
- curves: any[];
-
- delay: number;
-
- repeatCount: number;
-
- duration: number;
-
- speed: number;
-
- wrapMode: WrapMode;
-
- time: number;
-
- clip: AnimationClip;
-
- name: string;
- }
-
- export class Playable {
-
- isPlaying: boolean;
-
- isPaused: boolean;
-
- play(): void;
-
- stop(): void;
-
- pause(): void;
-
- resume(): void;
-
- step(): void;
- }
-
- export enum WrapMode {
- Default = 0,
- Normal = 0,
- Reverse = 0,
- Loop = 0,
- LoopReverse = 0,
- PingPong = 0,
- PingPongReverse = 0,
- }
-
- export class ParticleSystem extends _RendererUnderSG {
-
- preview: boolean;
-
- custom: boolean;
-
- file: string;
-
- texture: Texture2D;
-
- particleCount: number;
-
- srcBlendFactor: BlendFactor;
-
- dstBlendFactor: BlendFactor;
-
- playOnLoad: boolean;
-
- autoRemoveOnFinish: boolean;
-
- active: boolean;
-
- totalParticles: number;
-
- duration: number;
-
- emissionRate: number;
-
- life: number;
-
- lifeVar: number;
-
- startColor: Color;
-
- startColorVar: Color;
-
- endColor: Color;
-
- endColorVar: Color;
-
- angle: number;
-
- angleVar: number;
-
- startSize: number;
-
- startSizeVar: number;
-
- endSize: number;
-
- endSizeVar: number;
-
- startSpin: number;
-
- startSpinVar: number;
-
- endSpin: number;
-
- endSpinVar: number;
-
- sourcePos: Vec2;
-
- posVar: Vec2;
-
- positionType: ParticleSystem.PositionType;
-
- emitterMode: ParticleSystem.EmitterMode;
-
- gravity: Vec2;
-
- speed: number;
-
- speedVar: number;
-
- tangentialAccel: number;
-
- tangentialAccelVar: number;
-
- radialAccel: number;
-
- radialAccelVar: number;
-
- rotationIsDir: boolean;
-
- startRadius: number;
-
- startRadiusVar: number;
-
- endRadius: number;
-
- endRadiusVar: number;
-
- rotatePerS: number;
-
- rotatePerSVar: number;
-
- static DURATION_INFINITY: number;
-
- static START_SIZE_EQUAL_TO_END_SIZE: number;
-
- static START_RADIUS_EQUAL_TO_END_RADIUS: number;
-
- addParticle(): boolean;
-
- stopSystem(): void;
-
- resetSystem(): void;
-
- isFull(): boolean;
-
- setDisplayFrame(spriteFrame: SpriteFrame): void;
-
- setTextureWithRect(texture: Texture2D, rect: Rect): void;
- }
-
- export class TMXObject {
-
- getObjectName(): string;
-
- getProperty(propertyName: string): any;
-
- getProperties(): any;
-
- setObjectName(name: string): void;
-
- setProperties(props: any): void;
- }
-
- export class TiledLayer extends _SGComponent {
-
- getLayerName(): string;
-
- SetLayerName(layerName: string): void;
-
- getProperty(propertyName: string): any;
-
- getPositionAt(pos: Vec2|number, y?: number): Vec2;
-
- removeTileAt(pos: Vec2|number, y?: number): void;
-
- setTileGID(gid: number, posOrX: Vec2|number, flagsOrY: number, flags?: number): void;
-
- getTileGIDAt(pos: Vec2|number, y?: number): number;
-
- getTileAt(pos: Vec2|number, y?: number): _ccsg.Sprite;
-
- releaseMap(): void;
-
- setContentSize(size: Size|number, height?: number): void;
-
- getTexture(): Texture2D;
-
- setTexture(texture: Texture2D): void;
-
- setTileOpacity(opacity: number): void;
-
- getLayerSize(): Size;
-
- setLayerSize(layerSize: Size): void;
-
- getMapTileSize(): Size;
-
- setMapTileSize(tileSize: Size): void;
-
- getTiles(): any[];
-
- setTiles(tiles: any[]): void;
-
- getTileSet(): TMXTilesetInfo;
-
- setTileSet(tileset: TMXTilesetInfo): void;
-
- getLayerOrientation(): number;
-
- setLayerOrientation(orientation: TiledMap.Orientation): void;
-
- getProperties(): any[];
-
- setProperties(properties: any[]): void;
- }
-
- export class TiledMap extends Component {
-
- tmxAsset: TiledMapAsset;
-
- getMapSize(): Size;
-
- setMapSize(mapSize: Size): void;
-
- getTileSize(): Size;
-
- setTileSize(tileSize: Size): void;
-
- getMapOrientation(): number;
-
- setMapOrientation(orientation: TiledMap.Orientation): void;
-
- getObjectGroups(): TiledObjectGroup[];
-
- getProperties(): any[];
-
- setProperties(properties: any[]): void;
-
- allLayers(): TiledLayer[];
-
- getLayer(layerName: string): TiledLayer;
-
- getObjectGroup(groupName: string): TiledObjectGroup;
-
- getProperty(propertyName: string): string;
-
- getPropertiesForGID(GID: number): any;
- }
-
- export class TiledMapAsset extends Asset {
- textures: Texture2D[];
- textureNames: string[];
- }
-
- export class TiledObjectGroup extends _SGComponent {
-
- getPositionOffset(): Vec2;
-
- setPositionOffset(offset: Vec2): void;
-
- getProperties(): any;
-
- setProperties(Var: any): void;
-
- getGroupName(): string;
-
- setGroupName(groupName: string): void;
-
- getObject(objectName: string): any;
-
- getObjects(): any[];
- }
-
- export class NodePool {
-
- constructor(poolHandlerComp?: {prototype: Component}|string);
-
- poolHandlerComp: Function|string;
-
- size(): number;
-
- clear(): void;
-
- put(obj: Node): void;
-
- get(...params: any[]): Node;
- }
-
- export class pool {
-
- putInPool(obj: any): void;
-
- hasObject(objClass: any): boolean;
-
- removeObject(): void;
-
- getFromPool(): any;
-
- drainAllPools(): void;
- }
-
- export class Camera extends _RendererUnderSG {
-
- zoomRatio: number;
-
- static main: Camera;
-
- addTarget(target: Node): void;
-
- removeTarget(target: Node): void;
-
- getTargets(): [Node];
-
- getNodeToCameraTransform(node: Node): AffineTransform;
-
- getCameraToWorldPoint(point: Node): Vec2;
-
- containsNode(node: Node): boolean;
- }
-
- export class BoxCollider extends Collider implements Collider.Box {
-
- offset: Vec2;
-
- size: Size;
- }
-
- export class CircleCollider extends Collider implements Collider.Circle {
-
- offset: Vec2;
-
- radius: number;
- }
-
- export class Collider extends Component {
-
- tag: number;
- }
-
- export class CollisionManager implements EventTarget {
-
- enabled: boolean;
-
- enabledDrawBoundingBox: boolean;
-
- enabledDebugDraw: boolean;
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export class Intersection {
-
- static lineLine(a1: Vec2, a2: Vec2, b1: Vec2, b2: Vec2): boolean;
-
- static lineRect(a1: Vec2, a2: Vec2, b: Rect): boolean;
-
- static linePolygon(a1: Vec2, a2: Vec2, b: Vec2[]): boolean;
-
- static rectRect(a: Rect, b: Rect): boolean;
-
- static rectPolygon(a: Rect, b: Vec2[]): boolean;
-
- static polygonPolygon(a: Vec2[], b: Vec2[]): boolean;
-
- static circleCircle(a: {position: Vec2, radius: number}, b: {position: Vec2, radius: number}): boolean;
-
- static polygonCircle(polygon: Vec2[], circle: {position: Vec2, radius: number}): boolean;
-
- static pointInPolygon(point: Vec2, polygon: Vec2[]): boolean;
-
- static pointLineDistance(point: Vec2, start: Vec2, end: Vec2, isSegment: boolean): boolean;
- }
-
- export class PolygonCollider extends Collider implements Collider.Polygon {
-
- offset: Vec2;
-
- points: Vec2[];
- }
-
- export class Asset extends RawAsset {
-
- loaded: boolean;
-
- nativeUrl: string;
-
- static preventDeferredLoadDependents: boolean;
-
- static preventPreloadNativeObject: boolean;
-
- toString(): string;
-
- createNode(callback: (error: string, node: any) => void): void;
- }
-
- export class AudioClip extends Asset implements EventTarget {
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export class BitmapFont extends Font {
- }
-
- export class Font extends Asset {
- }
-
- export class JsonAsset extends Asset {
-
- json: any;
- }
-
- export class LabelAtlas extends BitmapFont {
- }
-
- export class Prefab extends Asset {
-
- data: Node;
-
- optimizationPolicy: Prefab.OptimizationPolicy;
-
- asyncLoadAssets: boolean;
-
- compileCreateFunction(): void;
- }
-
- export class RawAsset extends Object {
- }
-
- export class SceneAsset extends Asset {
- scene: Scene;
-
- asyncLoadAssets: boolean;
- }
-
- export class _Script extends Asset {
- }
-
- export class _JavaScript extends Asset {
- }
-
- export class CoffeeScript extends Asset {
- }
-
- export class TypeScript extends Asset {
- }
-
- export class SpriteAtlas extends Asset {
-
- getTexture(): Texture2D;
-
- getSpriteFrame(key: string): SpriteFrame;
-
- getSpriteFrames(): [SpriteFrame];
- }
-
- export class TTFFont extends Font {
- }
-
- export class TextAsset extends Asset {
-
- text: string;
- }
-
- export class Animation extends Component implements EventTarget {
-
- defaultClip: AnimationClip;
-
- currentClip: AnimationClip;
-
- playOnLoad: boolean;
-
- getClips(): AnimationClip[];
-
- play(name?: string, startTime?: number): AnimationState;
-
- playAdditive(name?: string, startTime?: number): AnimationState;
-
- stop(name?: string): void;
-
- pause(name?: string): void;
-
- resume(name?: string): void;
-
- setCurrentTime(time?: number, name?: string): void;
-
- getAnimationState(name: string): AnimationState;
-
- addClip(clip: AnimationClip, newName?: string): AnimationState;
-
- removeClip(clip: AnimationClip, force?: boolean): void;
-
- sample(name: string): void;
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export class AudioSource extends Component {
-
- isPlaying: boolean;
-
- clip: AudioClip;
-
- volume: number;
-
- mute: boolean;
-
- loop: boolean;
-
- playOnLoad: boolean;
-
- play(): void;
-
- stop(): void;
-
- pause(): void;
-
- resume(): void;
-
- rewind(): void;
-
- getCurrentTime(): void;
-
- setCurrentTime(time: number): void;
-
- getDuration(): void;
- }
-
- export class BlockInputEvents extends Component {
- }
-
- export class Button extends Component {
-
- interactable: boolean;
-
- enableAutoGrayEffect: boolean;
-
- transition: Button.Transition;
-
- normalColor: Color;
-
- pressedColor: Color;
-
- hoverColor: Color;
-
- disabledColor: Color;
-
- duration: number;
-
- zoomScale: number;
-
- normalSprite: SpriteFrame;
-
- pressedSprite: SpriteFrame;
-
- hoverSprite: SpriteFrame;
-
- disabledSprite: SpriteFrame;
-
- target: Node;
-
- clickEvents: Component.EventHandler[];
- }
-
- export class Canvas extends Component {
-
- static instance: Canvas;
-
- designResolution: Size;
-
- fitHeight: boolean;
-
- fitWidth: boolean;
- }
-
- export class Component extends Object {
-
- node: Node;
-
- uuid: string;
-
- enabled: boolean;
-
- enabledInHierarchy: boolean;
-
- _isOnLoadCalled: number;
-
- protected update(dt: number): void;
-
- protected lateUpdate(): void;
-
- protected onLoad(): void;
-
- protected start(): void;
-
- protected onEnable(): void;
-
- protected onDisable(): void;
-
- protected onDestroy(): void;
- protected onFocusInEditor(): void;
- protected onLostFocusInEditor(): void;
-
- protected resetInEditor(): void;
-
- addComponent<T extends Component>(type: {new(): T}): T;
- addComponent(className: string): any;
-
- getComponent<T extends Component>(type: {prototype: T}): T;
- getComponent(className: string): any;
-
- getComponents<T extends Component>(type: {prototype: T}): T[];
- getComponents(className: string): any[];
-
- getComponentInChildren<T extends Component>(type: {prototype: T}): T;
- getComponentInChildren(className: string): any;
-
- getComponentsInChildren<T extends Component>(type: {prototype: T}): T[];
- getComponentsInChildren(className: string): any[];
-
- _getLocalBounds(out_rect: Rect): void;
-
- onRestore(): void;
-
- schedule(callback: Function, interval?: number, repeat?: number, delay?: number): void;
-
- scheduleOnce(callback: Function, delay?: number): void;
-
- unschedule(callback_fn: Function): void;
-
- unscheduleAllCallbacks(): void;
- }
-
- export class EditBox extends _RendererUnderSG {
-
- string: string;
-
- backgroundImage: SpriteFrame;
-
- returnType: EditBox.KeyboardReturnType;
-
- inputFlag: EditBox.InputFlag;
-
- inputMode: EditBox.InputMode;
-
- fontSize: number;
-
- lineHeight: number;
-
- fontColor: Color;
-
- placeholder: string;
-
- placeholderFontSize: number;
-
- placeholderFontColor: Color;
-
- maxLength: number;
-
- stayOnTop: boolean;
-
- tabIndex: number;
-
- editingDidBegan: Component.EventHandler[];
-
- textChanged: Component.EventHandler[];
-
- editingDidEnded: Component.EventHandler[];
-
- editingReturn: Component.EventHandler[];
-
- setFocus(): void;
-
- isFocused(): void;
-
- destroy(): boolean;
- }
-
- export class Label extends _RendererUnderSG {
-
- string: string;
-
- horizontalAlign: Label.HorizontalAlign;
-
- verticalAlign: Label.VerticalAlign;
-
- actualFontSize: number;
-
- fontSize: number;
-
- fontFamily: string;
-
- lineHeight: number;
-
- overflow: Label.Overflow;
-
- enableWrapText: boolean;
-
- font: Font;
-
- isSystemFontUsed: boolean;
- }
-
- export class LabelOutline extends Component {
-
- color: Color;
-
- width: number;
- }
-
- export class Layout extends Component {
-
- type: Layout.Type;
-
- resizeMode: Layout.ResizeMode;
-
- cellSize: Size;
-
- startAxis: Layout.AxisDirection;
-
- paddingLeft: number;
-
- paddingRight: number;
-
- paddingTop: number;
-
- paddingBottom: number;
-
- spacingX: number;
-
- spacingY: number;
-
- verticalDirection: Layout.VerticalDirection;
-
- horizontalDirection: Layout.HorizontalDirection;
-
- updateLayout(): void;
-
- padding: number;
- }
-
- export class Mask extends _RendererInSG {
-
- type: Mask.Type;
-
- spriteFrame: SpriteFrame;
-
- alphaThreshold: number;
-
- inverted: boolean;
-
- segements: number;
- }
-
- export class PageView extends ScrollView {
-
- sizeMode: PageView.SizeMode;
-
- direction: PageView.Direction;
-
- scrollThreshold: number;
-
- autoPageTurningThreshold: number;
-
- pageTurningEventTiming: number;
-
- indicator: PageViewIndicator;
-
- pageTurningSpeed: number;
-
- pageEvents: Component.EventHandler[];
-
- getCurrentPageIndex(): number;
-
- setCurrentPageIndex(index: number): void;
-
- getPages(): Node[];
-
- addPage(page: Node): void;
-
- insertPage(page: Node, index: number): void;
-
- removePage(page: Node): void;
-
- removePageAtIndex(index: number): void;
-
- removeAllPages(): void;
-
- scrollToPage(idx: number, timeInSecond: number): void;
- }
-
- export class PageViewIndicator extends Component {
-
- spriteFrame: SpriteFrame;
-
- direction: PageViewIndicator.Direction;
-
- cellSize: Size;
-
- spacing: number;
-
- setPageView(target: PageView): void;
- }
-
- export class ProgressBar extends Component {
-
- barSprite: Sprite;
-
- mode: ProgressBar.Mode;
-
- totalLength: number;
-
- progress: number;
-
- reverse: boolean;
- }
-
- export class _RendererInSG extends _SGComponent {
- }
-
- export class _RendererUnderSG extends _SGComponent {
- }
-
- export class RichText extends Component {
-
- string: string;
-
- horizontalAlign: TextAlignment;
-
- fontSize: number;
-
- font: cc.TTFFont;
-
- maxWidth: number;
-
- lineHeight: number;
-
- imageAtlas: SpriteAtlas;
-
- handleTouchEvent: boolean;
- }
-
- export class _SGComponent extends Component {
- }
-
- export class Scrollbar extends Component {
-
- handle: Sprite;
-
- direction: Scrollbar.Direction;
-
- enableAutoHide: boolean;
-
- autoHideTime: number;
- }
-
- export class ScrollView extends Component {
-
- content: Node;
-
- horizontal: boolean;
-
- vertical: boolean;
-
- inertia: boolean;
-
- brake: number;
-
- elastic: boolean;
-
- bounceDuration: number;
-
- horizontalScrollBar: Scrollbar;
-
- verticalScrollBar: Scrollbar;
-
- scrollEvents: Component.EventHandler[];
-
- cancelInnerEvents: boolean;
-
- scrollToBottom(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToTop(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToLeft(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToRight(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToTopLeft(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToTopRight(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToBottomLeft(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToBottomRight(timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToOffset(offset: Vec2, timeInSecond?: number, attenuated?: boolean): void;
-
- getScrollOffset(): Vec2;
-
- getMaxScrollOffset(): Vec2;
-
- scrollToPercentHorizontal(percent: number, timeInSecond?: number, attenuated?: boolean): void;
-
- scrollTo(anchor: Vec2, timeInSecond?: number, attenuated?: boolean): void;
-
- scrollToPercentVertical(percent: number, timeInSecond?: number, attenuated?: boolean): void;
-
- stopAutoScroll(): void;
-
- setContentPosition(position: Vec2): void;
-
- getContentPosition(): Position;
-
- isScrolling(): boolean;
-
- isAutoScrolling(): boolean;
- }
-
- export class Slider extends Component {
-
- handle: Button;
-
- direction: Slider.Direction;
-
- progress: number;
-
- slideEvents: Component.EventHandler[];
- }
-
- export class Sprite extends _RendererUnderSG {
-
- spriteFrame: SpriteFrame;
-
- type: Sprite.Type;
-
- fillType: Sprite.FillType;
-
- fillCenter: Vec2;
-
- fillStart: number;
-
- fillRange: number;
-
- trim: boolean;
-
- srcBlendFactor: BlendFactor;
-
- dstBlendFactor: BlendFactor;
-
- sizeMode: Sprite.SizeMode;
-
- setInsetLeft(insetLeft: number): void;
-
- getInsetLeft(): number;
-
- setInsetTop(insetTop: number): void;
-
- getInsetTop(): number;
-
- setInsetRight(insetRight: number): void;
-
- getInsetRight(): number;
-
- setInsetBottom(bottomInset: number): void;
-
- getInsetBottom(): number;
- }
-
- export class SpriteDistortion extends Component {
-
- offset: Vec2;
-
- tiling: Vec2;
- }
-
- export class Toggle extends Button {
-
- isChecked: boolean;
-
- toggleGroup: ToggleGroup;
-
- checkMark: Sprite;
-
- checkEvents: Component.EventHandler[];
-
- check(): void;
-
- uncheck(): void;
- }
-
- export class ToggleContainer extends Component {
-
- allowSwitchOff: boolean;
-
- toggleItems: Toggle[];
- }
-
- export class ToggleGroup extends Component {
-
- allowSwitchOff: boolean;
-
- toggleItems: any[];
- }
-
- export class VideoPlayer extends _RendererUnderSG {
-
- resourceType: VideoPlayer.ResourceType;
-
- remoteURL: string;
-
- clip: string;
-
- currentTime: number;
-
- volume: number;
-
- mute: boolean;
-
- keepAspectRatio: boolean;
-
- isFullscreen: boolean;
-
- videoPlayerEvent: Component.EventHandler[];
-
- play(): void;
-
- resume(): void;
-
- pause(): void;
-
- stop(): void;
-
- getDuration(): number;
-
- isPlaying(): boolean;
-
- destroy(): boolean;
- }
-
- export class ViewGroup extends Component {
- }
-
- export class WebView extends _RendererUnderSG {
-
- url: string;
-
- webviewLoadedEvents: Component.EventHandler[];
-
- setJavascriptInterfaceScheme(scheme: string): void;
-
- setOnJSCallback(callback: Function): void;
-
- evaluateJS(str: string): void;
-
- destroy(): boolean;
- }
-
- export class Widget extends Component {
-
- target: Node;
-
- isAlignTop: boolean;
-
- isAlignVerticalCenter: boolean;
-
- isAlignBottom: boolean;
-
- isAlignLeft: boolean;
-
- isAlignHorizontalCenter: boolean;
-
- isAlignRight: boolean;
-
- isStretchWidth: boolean;
-
- isStretchHeight: boolean;
-
- top: number;
-
- bottom: number;
-
- left: number;
-
- right: number;
-
- horizontalCenter: number;
-
- verticalCenter: number;
-
- isAbsoluteHorizontalCenter: boolean;
-
- isAbsoluteVerticalCenter: boolean;
-
- isAbsoluteTop: boolean;
-
- isAbsoluteBottom: boolean;
-
- isAbsoluteLeft: boolean;
-
- isAbsoluteRight: boolean;
-
- alignMode: Widget.AlignMode;
-
- updateAlignment(): void;
-
- isAlignOnce: boolean;
- }
-
- export class EventTarget {
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export class Event {
-
- constructor(type: string, bubbles: boolean);
-
- type: string;
-
- bubbles: boolean;
-
- target: any;
-
- currentTarget: any;
-
- eventPhase: number;
-
- unuse(): string;
-
- reuse(): string;
-
- stopPropagation(): void;
-
- stopPropagationImmediate(): void;
-
- isStopped(): boolean;
-
- getCurrentTarget(): Node;
-
- getType(): string;
-
- static NO_TYPE: string;
-
- static TOUCH: string;
-
- static MOUSE: string;
-
- static KEYBOARD: string;
-
- static ACCELERATION: string;
-
- static NONE: number;
-
- static CAPTURING_PHASE: number;
-
- static AT_TARGET: number;
-
- static BUBBLING_PHASE: number;
- }
-
- export class SystemEvent extends EventTarget {
-
- setAccelerometerEnabled(isEnable: boolean): void;
-
- setAccelerometerInterval(interval: number): void;
- }
-
- export class EventListener {
-
- constructor(type: number, listenerID: number, callback: number);
-
- checkAvailable(): boolean;
-
- clone(): EventListener;
-
- setEnabled(enabled: boolean): void;
-
- isEnabled(): boolean;
-
- static UNKNOWN: number;
-
- static KEYBOARD: number;
-
- static ACCELERATION: number;
-
- static create(argObj: any): EventListener;
- }
-
- export class eventManager {
-
- static pauseTarget(node: Node, recursive?: boolean): void;
-
- static resumeTarget(node: Node, recursive?: boolean): void;
-
- static hasEventListener(listenerID: string|number): boolean;
-
- static addListener(listener: EventListener|any, nodeOrPriority: Node|number): EventListener;
-
- static removeListener(listener: EventListener): void;
-
- static removeListeners(listenerType: number|Node, recursive?: boolean): void;
-
- static removeAllListeners(): void;
-
- static setPriority(listener: EventListener, fixedPriority: number): void;
-
- static setEnabled(enabled: boolean): void;
-
- static isEnabled(): boolean;
- }
-
- export class Touch {
-
- getLocation(): Vec2;
-
- getLocationX(): number;
-
- getLocationY(): number;
-
- getPreviousLocation(): Vec2;
-
- getStartLocation(): Vec2;
-
- getDelta(): Vec2;
-
- getLocationInView(): Vec2;
-
- getPreviousLocationInView(): Vec2;
-
- getStartLocationInView(): Vec2;
-
- getID(): number;
-
- setTouchInfo(id: number, x: number, y: number): void;
- }
-
- export class loader extends Pipeline {
-
- static assetLoader: any;
-
- static downloader: any;
-
- static loader: any;
-
- static getXMLHttpRequest(): XMLHttpRequest;
-
- static addDownloadHandlers(extMap: any): void;
-
- static addLoadHandlers(extMap: any): void;
-
- static load(resources: string|string[]|{uuid?: string, url?: string, type?: string}, completeCallback?: Function): void;
- static load(resources: string|string[]|{uuid?: string, url?: string, type?: string}, progressCallback: (completedCount: number, totalCount: number, item: any) => void, completeCallback: Function|null): void;
-
- static loadRes(url: string, type: typeof cc.Asset, progressCallback: (completedCount: number, totalCount: number, item: any) => void, completeCallback: ((error: Error, resource: any) => void)|null): void;
- static loadRes(url: string, type: typeof cc.Asset, completeCallback: (error: Error, resource: any) => void): void;
- static loadRes(url: string, type: typeof cc.Asset): void;
- static loadRes(url: string, progressCallback: (completedCount: number, totalCount: number, item: any) => void, completeCallback: ((error: Error, resource: any) => void)|null): void;
- static loadRes(url: string, completeCallback: (error: Error, resource: any) => void): void;
- static loadRes(url: string): void;
- /**
- This method is like {{#crossLink "loader/loadRes:method"}}{{/crossLink}} except that it accepts array of url.
- @param urls Array of URLs of the target resource.
- The url is relative to the "resources" folder, extensions must be omitted.
- @param type Only asset of type will be loaded if this argument is supplied.
- @param progressCallback Callback invoked when progression change.
- @param completeCallback A callback which is called when all assets have been loaded, or an error occurs.
-
- @example
- ```js
- // load the SpriteFrames from resources folder
- var spriteFrames;
- var urls = ['misc/characters/character_01', 'misc/weapons/weapons_01'];
- cc.loader.loadResArray(urls, cc.SpriteFrame, function (err, assets) {
- if (err) {
- cc.error(err);
- return;
- }
- spriteFrames = assets;
-
- });
- ```
- */
- static loadResArray(url: string[], type: typeof cc.Asset, progressCallback: (completedCount: number, totalCount: number, item: any) => void, completeCallback: ((error: Error, resource: any[]) => void)|null): void;
- static loadResArray(url: string[], type: typeof cc.Asset, completeCallback: (error: Error, resource: any[]) => void): void;
- static loadResArray(url: string[], type: typeof cc.Asset): void;
- static loadResArray(url: string[], progressCallback: (completedCount: number, totalCount: number, item: any) => void, completeCallback: ((error: Error, resource: any[]) => void)|null): void;
- static loadResArray(url: string[], completeCallback: (error: Error, resource: any[]) => void): void;
- static loadResArray(url: string[]): void;
- /**
- Load all assets in a folder inside the "assets/resources" folder of your project.<br>
- <br>
- Note: All asset URLs in Creator use forward slashes, URLs using backslashes will not work.
- @param url Url of the target folder.
- The url is relative to the "resources" folder, extensions must be omitted.
- @param type Only asset of type will be loaded if this argument is supplied.
- @param progressCallback Callback invoked when progression change.
- @param completeCallback A callback which is called when all assets have been loaded, or an error occurs.
-
- @example
- ```js
- // load the texture (resources/imgs/cocos.png) and the corresponding sprite frame
- cc.loader.loadResDir('imgs/cocos', function (err, assets) {
- if (err) {
- cc.error(err);
- return;
- }
- var texture = assets[0];
- var spriteFrame = assets[1];
- });
-
- // load all textures in "resources/imgs/"
- cc.loader.loadResDir('imgs', cc.Texture2D, function (err, textures) {
- var texture1 = textures[0];
- var texture2 = textures[1];
- });
-
- // load all JSONs in "resources/data/"
- cc.loader.loadResDir('data', function (err, objects, urls) {
- var data = objects[0];
- var url = urls[0];
- });
- ```
- */
- static loadResDir(url: string, type: typeof cc.Asset, progressCallback: (completedCount: number, totalCount: number, item: any) => void, completeCallback: ((error: Error, resource: any[], urls: string[]) => void)|null): void;
- static loadResDir(url: string, type: typeof cc.Asset, completeCallback: (error: Error, resource: any[], urls: string[]) => void): void;
- static loadResDir(url: string, type: typeof cc.Asset): void;
- static loadResDir(url: string, progressCallback: (completedCount: number, totalCount: number, item: any) => void, completeCallback: ((error: Error, resource: any[], urls: string[]) => void)|null): void;
- static loadResDir(url: string, completeCallback: (error: Error, resource: any[], urls: string[]) => void): void;
- static loadResDir(url: string): void;
- /**
- Get resource data by id. <br>
- When you load resources with {{#crossLink "loader/load:method"}}{{/crossLink}} or {{#crossLink "loader/loadRes:method"}}{{/crossLink}},
- the url will be the unique identity of the resource.
- After loaded, you can acquire them by passing the url to this API.
- @param url url
- @param type Only asset of type will be returned if this argument is supplied.
- */
- static getRes(url: string, type?: Function): any;
- /**
- !#en Get all resource dependencies of the requested asset in an array, including itself.
- The owner parameter accept the following types: 1. The asset itself; 2. The resource url; 3. The asset's uuid.<br>
- The returned array stores the dependencies with their uuids, after retrieve dependencies,
- you can release them, access dependent assets by passing the uuid to {{#crossLink "loader/getRes:method"}}{{/crossLink}}, or other stuffs you want.<br>
- For release all dependencies of an asset, please refer to {{#crossLink "loader/release:method"}}{{/crossLink}}
- Here is some examples:
- !#zh 获取一个指定资源的所有依赖资源,包含它自身,并保存在数组中返回。owner 参数接收以下几种类型:1. 资源 asset 对象;2. 资源目录下的 url;3. 资源的 uuid。<br>
- 返回的数组将仅保存依赖资源的 uuid,获取这些 uuid 后,你可以从 loader 释放这些资源;通过 {{#crossLink "loader/getRes:method"}}{{/crossLink}} 获取某个资源或者进行其他你需要的操作。<br>
- 想要释放一个资源及其依赖资源,可以参考 {{#crossLink "loader/release:method"}}{{/crossLink}}。下面是一些示例代码:
- @param owner The owner asset or the resource url or the asset's uuid
-
- @example
- ```js
- // Release all dependencies of a loaded prefab
- var deps = cc.loader.getDependsRecursively(prefab);
- cc.loader.release(deps);
- // Retrieve all dependent textures
- var deps = cc.loader.getDependsRecursively('prefabs/sample');
- var textures = [];
- for (var i = 0; i < deps.length; ++i) {
- var item = cc.loader.getRes(deps[i]);
- if (item instanceof cc.Texture2D) {
- textures.push(item);
- }
- }
- ```
- */
- static getDependsRecursively(owner: Asset|RawAsset|string): any[];
- /**
- !#en
- Release the content of an asset or an array of assets by uuid.
- Start from v1.3, this method will not only remove the cache of the asset in loader, but also clean up its content.
- For example, if you release a texture, the texture asset and its gl texture data will be freed up.
- In complexe project, you can use this function with {{#crossLink "loader/getDependsRecursively:method"}}{{/crossLink}} to free up memory in critical circumstances.
- Notice, this method may cause the texture to be unusable, if there are still other nodes use the same texture, they may turn to black and report gl errors.
- If you only want to remove the cache of an asset, please use {{#crossLink "pipeline/removeItem:method"}}{{/crossLink}}
- !#zh
- 通过 id(通常是资源 url)来释放一个资源或者一个资源数组。
- 从 v1.3 开始,这个方法不仅会从 loader 中删除资源的缓存引用,还会清理它的资源内容。
- 比如说,当你释放一个 texture 资源,这个 texture 和它的 gl 贴图数据都会被释放。
- 在复杂项目中,我们建议你结合 {{#crossLink "loader/getDependsRecursively:method"}}{{/crossLink}} 来使用,便于在设备内存告急的情况下更快地释放不再需要的资源的内存。
- 注意,这个函数可能会导致资源贴图或资源所依赖的贴图不可用,如果场景中存在节点仍然依赖同样的贴图,它们可能会变黑并报 GL 错误。
- 如果你只想删除一个资源的缓存引用,请使用 {{#crossLink "pipeline/removeItem:method"}}{{/crossLink}}
- @param asset asset
-
- @example
- ```js
- // Release a texture which is no longer need
- cc.loader.release(texture);
- // Release all dependencies of a loaded prefab
- var deps = cc.loader.getDependsRecursively('prefabs/sample');
- cc.loader.release(deps);
- // If there is no instance of this prefab in the scene, the prefab and its dependencies like textures, sprite frames, etc, will be freed up.
- // If you have some other nodes share a texture in this prefab, you can skip it in two ways:
- // 1. Forbid auto release a texture before release
- cc.loader.setAutoRelease(texture2d, false);
- // 2. Remove it from the dependencies array
- var deps = cc.loader.getDependsRecursively('prefabs/sample');
- var index = deps.indexOf(texture2d._uuid);
- if (index !== -1)
- deps.splice(index, 1);
- cc.loader.release(deps);
- ```
- */
- static release(asset: Asset|RawAsset|string|any[]): void;
- /**
- !#en Release the asset by its object. Refer to {{#crossLink "loader/release:method"}}{{/crossLink}} for detailed informations.
- !#zh 通过资源对象自身来释放资源。详细信息请参考 {{#crossLink "loader/release:method"}}{{/crossLink}}
- @param asset asset
- */
- static releaseAsset(asset: Asset): void;
- /**
- !#en Release the asset loaded by {{#crossLink "loader/loadRes:method"}}{{/crossLink}}. Refer to {{#crossLink "loader/release:method"}}{{/crossLink}} for detailed informations.
- !#zh 释放通过 {{#crossLink "loader/loadRes:method"}}{{/crossLink}} 加载的资源。详细信息请参考 {{#crossLink "loader/release:method"}}{{/crossLink}}
- @param url url
- @param type Only asset of type will be released if this argument is supplied.
- */
- static releaseRes(url: string, type?: Function): void;
- /**
- !#en Release the all assets loaded by {{#crossLink "loader/loadResDir:method"}}{{/crossLink}}. Refer to {{#crossLink "loader/release:method"}}{{/crossLink}} for detailed informations.
- !#zh 释放通过 {{#crossLink "loader/loadResDir:method"}}{{/crossLink}} 加载的资源。详细信息请参考 {{#crossLink "loader/release:method"}}{{/crossLink}}
- @param url url
- @param type Only asset of type will be released if this argument is supplied.
- */
- static releaseResDir(url: string, type?: Function): void;
- /**
- !#en Resource all assets. Refer to {{#crossLink "loader/release:method"}}{{/crossLink}} for detailed informations.
- !#zh 释放所有资源。详细信息请参考 {{#crossLink "loader/release:method"}}{{/crossLink}}
- */
- static releaseAll(): void;
- /**
- !#en
- Indicates whether to release the asset when loading a new scene.<br>
- By default, when loading a new scene, all assets in the previous scene will be released or preserved
- according to whether the previous scene checked the "Auto Release Assets" option.
- On the other hand, assets dynamically loaded by using `cc.loader.loadRes` or `cc.loader.loadResDir`
- will not be affected by that option, remain not released by default.<br>
- Use this API to change the default behavior on a single asset, to force preserve or release specified asset when scene switching.<br>
- <br>
- See: {{#crossLink "loader/setAutoReleaseRecursively:method"}}cc.loader.setAutoReleaseRecursively{{/crossLink}}, {{#crossLink "loader/isAutoRelease:method"}}cc.loader.isAutoRelease{{/crossLink}}
- !#zh
- 设置当场景切换时是否自动释放资源。<br>
- 默认情况下,当加载新场景时,旧场景的资源根据旧场景是否勾选“Auto Release Assets”,将会被释放或者保留。
- 而使用 `cc.loader.loadRes` 或 `cc.loader.loadResDir` 动态加载的资源,则不受场景设置的影响,默认不自动释放。<br>
- 使用这个 API 可以在单个资源上改变这个默认行为,强制在切换场景时保留或者释放指定资源。<br>
- <br>
- 参考:{{#crossLink "loader/setAutoReleaseRecursively:method"}}cc.loader.setAutoReleaseRecursively{{/crossLink}},{{#crossLink "loader/isAutoRelease:method"}}cc.loader.isAutoRelease{{/crossLink}}
- @param assetOrUrlOrUuid asset object or the raw asset's url or uuid
- @param autoRelease indicates whether should release automatically
-
- @example
- ```js
- // auto release the texture event if "Auto Release Assets" disabled in current scene
- cc.loader.setAutoRelease(texture2d, true);
- // don't release the texture even if "Auto Release Assets" enabled in current scene
- cc.loader.setAutoRelease(texture2d, false);
- // first parameter can be url
- cc.loader.setAutoRelease(audioUrl, false);
- ```
- */
- static setAutoRelease(assetOrUrlOrUuid: Asset|string, autoRelease: boolean): void;
- /**
- !#en
- Indicates whether to release the asset and its referenced other assets when loading a new scene.<br>
- By default, when loading a new scene, all assets in the previous scene will be released or preserved
- according to whether the previous scene checked the "Auto Release Assets" option.
- On the other hand, assets dynamically loaded by using `cc.loader.loadRes` or `cc.loader.loadResDir`
- will not be affected by that option, remain not released by default.<br>
- Use this API to change the default behavior on the specified asset and its recursively referenced assets, to force preserve or release specified asset when scene switching.<br>
- <br>
- See: {{#crossLink "loader/setAutoRelease:method"}}cc.loader.setAutoRelease{{/crossLink}}, {{#crossLink "loader/isAutoRelease:method"}}cc.loader.isAutoRelease{{/crossLink}}
- !#zh
- 设置当场景切换时是否自动释放资源及资源引用的其它资源。<br>
- 默认情况下,当加载新场景时,旧场景的资源根据旧场景是否勾选“Auto Release Assets”,将会被释放或者保留。
- 而使用 `cc.loader.loadRes` 或 `cc.loader.loadResDir` 动态加载的资源,则不受场景设置的影响,默认不自动释放。<br>
- 使用这个 API 可以在指定资源及资源递归引用到的所有资源上改变这个默认行为,强制在切换场景时保留或者释放指定资源。<br>
- <br>
- 参考:{{#crossLink "loader/setAutoRelease:method"}}cc.loader.setAutoRelease{{/crossLink}},{{#crossLink "loader/isAutoRelease:method"}}cc.loader.isAutoRelease{{/crossLink}}
- @param assetOrUrlOrUuid asset object or the raw asset's url or uuid
- @param autoRelease indicates whether should release automatically
-
- @example
- ```js
- // auto release the SpriteFrame and its Texture event if "Auto Release Assets" disabled in current scene
- cc.loader.setAutoReleaseRecursively(spriteFrame, true);
- // don't release the SpriteFrame and its Texture even if "Auto Release Assets" enabled in current scene
- cc.loader.setAutoReleaseRecursively(spriteFrame, false);
- // don't release the Prefab and all the referenced assets
- cc.loader.setAutoReleaseRecursively(prefab, false);
- ```
- */
- static setAutoReleaseRecursively(assetOrUrlOrUuid: Asset|string, autoRelease: boolean): void;
- /**
- !#en
- Returns whether the asset is configured as auto released, despite how "Auto Release Assets" property is set on scene asset.<br>
- <br>
- See: {{#crossLink "loader/setAutoRelease:method"}}cc.loader.setAutoRelease{{/crossLink}}, {{#crossLink "loader/setAutoReleaseRecursively:method"}}cc.loader.setAutoReleaseRecursively{{/crossLink}}
-
- !#zh
- 返回指定的资源是否有被设置为自动释放,不论场景的“Auto Release Assets”如何设置。<br>
- <br>
- 参考:{{#crossLink "loader/setAutoRelease:method"}}cc.loader.setAutoRelease{{/crossLink}},{{#crossLink "loader/setAutoReleaseRecursively:method"}}cc.loader.setAutoReleaseRecursively{{/crossLink}}
- @param assetOrUrl asset object or the raw asset's url
- */
- static isAutoRelease(assetOrUrl: Asset|string): boolean;
- }
- /** !#en
- LoadingItems is the queue of items which can flow them into the loading pipeline.</br>
- Please don't construct it directly, use {{#crossLink "LoadingItems.create"}}cc.LoadingItems.create{{/crossLink}} instead, because we use an internal pool to recycle the queues.</br>
- It hold a map of items, each entry in the map is a url to object key value pair.</br>
- Each item always contains the following property:</br>
- - id: The identification of the item, usually it's identical to url</br>
- - url: The url </br>
- - type: The type, it's the extension name of the url by default, could be specified manually too.</br>
- - error: The error happened in pipeline will be stored in this property.</br>
- - content: The content processed by the pipeline, the final result will also be stored in this property.</br>
- - complete: The flag indicate whether the item is completed by the pipeline.</br>
- - states: An object stores the states of each pipe the item go through, the state can be: Pipeline.ItemState.WORKING | Pipeline.ItemState.ERROR | Pipeline.ItemState.COMPLETE</br>
- </br>
- Item can hold other custom properties.</br>
- Each LoadingItems object will be destroyed for recycle after onComplete callback</br>
- So please don't hold its reference for later usage, you can copy properties in it though.
- !#zh
- LoadingItems 是一个加载对象队列,可以用来输送加载对象到加载管线中。</br>
- 请不要直接使用 new 构造这个类的对象,你可以使用 {{#crossLink "LoadingItems.create"}}cc.LoadingItems.create{{/crossLink}} 来创建一个新的加载队列,这样可以允许我们的内部对象池回收并重利用加载队列。
- 它有一个 map 属性用来存放加载项,在 map 对象中已 url 为 key 值。</br>
- 每个对象都会包含下列属性:</br>
- - id:该对象的标识,通常与 url 相同。</br>
- - url:路径 </br>
- - type: 类型,它这是默认的 URL 的扩展名,可以手动指定赋值。</br>
- - error:pipeline 中发生的错误将被保存在这个属性中。</br>
- - content: pipeline 中处理的临时结果,最终的结果也将被存储在这个属性中。</br>
- - complete:该标志表明该对象是否通过 pipeline 完成。</br>
- - states:该对象存储每个管道中对象经历的状态,状态可以是 Pipeline.ItemState.WORKING | Pipeline.ItemState.ERROR | Pipeline.ItemState.COMPLETE</br>
- </br>
- 对象可容纳其他自定义属性。</br>
- 每个 LoadingItems 对象都会在 onComplete 回调之后被销毁,所以请不要持有它的引用并在结束回调之后依赖它的内容执行任何逻辑,有这种需求的话你可以提前复制它的内容。 */
- export class LoadingItems extends CallbacksInvoker {
- /**
- !#en This is a callback which will be invoked while an item flow out the pipeline.
- You can pass the callback function in LoadingItems.create or set it later.
- !#zh 这个回调函数将在 item 加载结束后被调用。你可以在构造时传递这个回调函数或者是在构造之后直接设置。
- @param completedCount The number of the items that are already completed.
- @param totalCount The total number of the items.
- @param item The latest item which flow out the pipeline.
-
- @example
- ```js
- loadingItems.onProgress = function (completedCount, totalCount, item) {
- var progress = (100 * completedCount / totalCount).toFixed(2);
- cc.log(progress + '%');
- }
- ```
- */
- onProgress(completedCount: number, totalCount: number, item: any): void;
- /**
- !#en This is a callback which will be invoked while all items is completed,
- You can pass the callback function in LoadingItems.create or set it later.
- !#zh 该函数将在加载队列全部完成时被调用。你可以在构造时传递这个回调函数或者是在构造之后直接设置。
- @param errors All errored urls will be stored in this array, if no error happened, then it will be null
- @param items All items.
-
- @example
- ```js
- loadingItems.onComplete = function (errors, items) {
- if (error)
- cc.log('Completed with ' + errors.length + ' errors');
- else
- cc.log('Completed ' + items.totalCount + ' items');
- }
- ```
- */
- onComplete(errors: any[], items: LoadingItems): void;
- /** !#en The map of all items.
- !#zh 存储所有加载项的对象。 */
- map: any;
- /** !#en The map of completed items.
- !#zh 存储已经完成的加载项。 */
- completed: any;
- /** !#en Total count of all items.
- !#zh 所有加载项的总数。 */
- totalCount: number;
- /** !#en Total count of completed items.
- !#zh 所有完成加载项的总数。 */
- completedCount: number;
- /** !#en Activated or not.
- !#zh 是否启用。 */
- active: boolean;
- /**
- !#en The constructor function of LoadingItems, this will use recycled LoadingItems in the internal pool if possible.
- You can pass onProgress and onComplete callbacks to visualize the loading process.
- !#zh LoadingItems 的构造函数,这种构造方式会重用内部对象缓冲池中的 LoadingItems 队列,以尽量避免对象创建。
- 你可以传递 onProgress 和 onComplete 回调函数来获知加载进度信息。
- @param pipeline The pipeline to process the queue.
- @param urlList The items array.
- @param onProgress The progression callback, refer to {{#crossLink "LoadingItems.onProgress"}}{{/crossLink}}
- @param onComplete The completion callback, refer to {{#crossLink "LoadingItems.onComplete"}}{{/crossLink}}
-
- @example
- ```js
- cc.LoadingItems.create(cc.loader, ['a.png', 'b.plist'], function (completedCount, totalCount, item) {
- var progress = (100 * completedCount / totalCount).toFixed(2);
- cc.log(progress + '%');
- }, function (errors, items) {
- if (errors) {
- for (var i = 0; i < errors.length; ++i) {
- cc.log('Error url: ' + errors[i] + ', error: ' + items.getError(errors[i]));
- }
- }
- else {
- var result_a = items.getContent('a.png');
-
- }
- })
- ```
- */
- static create(pipeline: Pipeline, urlList: any[], onProgress: Function, onComplete: Function): LoadingItems;
- /**
- !#en Retrieve the LoadingItems queue object for an item.
- !#zh 通过 item 对象获取它的 LoadingItems 队列。
- @param item The item to query
- */
- static getQueue(item: any): LoadingItems;
- /**
- !#en Complete an item in the LoadingItems queue, please do not call this method unless you know what's happening.
- !#zh 通知 LoadingItems 队列一个 item 对象已完成,请不要调用这个函数,除非你知道自己在做什么。
- @param item The item which has completed
- */
- static itemComplete(item: any): void;
- /**
- !#en Add urls to the LoadingItems queue.
- !#zh 向一个 LoadingItems 队列添加加载项。
- @param urlList The url list to be appended, the url can be object or string
- */
- append(urlList: any[]): any[];
- /**
- !#en Complete a LoadingItems queue, please do not call this method unless you know what's happening.
- !#zh 完成一个 LoadingItems 队列,请不要调用这个函数,除非你知道自己在做什么。
- */
- allComplete(): void;
- /**
- !#en Check whether all items are completed.
- !#zh 检查是否所有加载项都已经完成。
- */
- isCompleted(): boolean;
- /**
- !#en Check whether an item is completed.
- !#zh 通过 id 检查指定加载项是否已经加载完成。
- @param id The item's id.
- */
- isItemCompleted(id: string): boolean;
- /**
- !#en Check whether an item exists.
- !#zh 通过 id 检查加载项是否存在。
- @param id The item's id.
- */
- exists(id: string): boolean;
- /**
- !#en Returns the content of an internal item.
- !#zh 通过 id 获取指定对象的内容。
- @param id The item's id.
- */
- getContent(id: string): any;
- /**
- !#en Returns the error of an internal item.
- !#zh 通过 id 获取指定对象的错误信息。
- @param id The item's id.
- */
- getError(id: string): any;
- /**
- !#en Add a listener for an item, the callback will be invoked when the item is completed.
- !#zh 监听加载项(通过 key 指定)的完成事件。
- @param key key
- @param callback can be null
- @param target can be null
- */
- addListener(key: string, callback: Function, target: any): boolean;
- /**
- !#en
- Check if the specified key has any registered callback. </br>
- If a callback is also specified, it will only return true if the callback is registered.
- !#zh
- 检查指定的加载项是否有完成事件监听器。</br>
- 如果同时还指定了一个回调方法,并且回调有注册,它只会返回 true。
- @param key key
- @param callback callback
- @param target target
- */
- hasListener(key: string, callback?: Function, target?: any): boolean;
- /**
- !#en
- Removes a listener. </br>
- It will only remove when key, callback, target all match correctly.
- !#zh
- 移除指定加载项已经注册的完成事件监听器。</br>
- 只会删除 key, callback, target 均匹配的监听器。
- @param key key
- @param callback callback
- @param target target
- */
- remove(key: string, callback: Function, target: any): boolean;
- /**
- !#en
- Removes all callbacks registered in a certain event
- type or all callbacks registered with a certain target.
- !#zh 删除指定目标的所有完成事件监听器。
- @param key The event key to be removed or the target to be removed
- */
- removeAllListeners(key: string|any): void;
- /**
- !#en Complete an item in the LoadingItems queue, please do not call this method unless you know what's happening.
- !#zh 通知 LoadingItems 队列一个 item 对象已完成,请不要调用这个函数,除非你知道自己在做什么。
- @param id The item url
- */
- itemComplete(id: string): void;
- /**
- !#en Destroy the LoadingItems queue, the queue object won't be garbage collected, it will be recycled, so every after destroy is not reliable.
- !#zh 销毁一个 LoadingItems 队列,这个队列对象会被内部缓冲池回收,所以销毁后的所有内部信息都是不可依赖的。
- */
- destroy(): void;
- }
- /** !#en
- A pipeline describes a sequence of manipulations, each manipulation is called a pipe.</br>
- It's designed for loading process. so items should be urls, and the url will be the identity of each item during the process.</br>
- A list of items can flow in the pipeline and it will output the results of all pipes.</br>
- They flow in the pipeline like water in tubes, they go through pipe by pipe separately.</br>
- Finally all items will flow out the pipeline and the process is finished.
-
- !#zh
- pipeline 描述了一系列的操作,每个操作都被称为 pipe。</br>
- 它被设计来做加载过程的流程管理。所以 item 应该是 url,并且该 url 将是在处理中的每个 item 的身份标识。</br>
- 一个 item 列表可以在 pipeline 中流动,它将输出加载项经过所有 pipe 之后的结果。</br>
- 它们穿过 pipeline 就像水在管子里流动,将会按顺序流过每个 pipe。</br>
- 最后当所有加载项都流出 pipeline 时,整个加载流程就结束了。 */
- export class Pipeline {
- /**
- !#en
- Constructor, pass an array of pipes to construct a new Pipeline,
- the pipes will be chained in the given order.</br>
- A pipe is an object which must contain an `id` in string and a `handle` function,
- the id must be unique in the pipeline.</br>
- It can also include `async` property to identify whether it's an asynchronous process.
- !#zh
- 构造函数,通过一系列的 pipe 来构造一个新的 pipeline,pipes 将会在给定的顺序中被锁定。</br>
- 一个 pipe 就是一个对象,它包含了字符串类型的 ‘id’ 和 ‘handle’ 函数,在 pipeline 中 id 必须是唯一的。</br>
- 它还可以包括 ‘async’ 属性以确定它是否是一个异步过程。
- @param pipes pipes
-
- @example
- ```js
- var pipeline = new Pipeline([
- {
- id: 'Downloader',
- handle: function (item, callback) {},
- async: true
- },
- {id: 'Parser', handle: function (item) {}, async: false}
- ]);
- ```
- */
- constructor(pipes: any[]);
- /**
- !#en
- Insert a new pipe at the given index of the pipeline. </br>
- A pipe must contain an `id` in string and a `handle` function, the id must be unique in the pipeline.
- !#zh
- 在给定的索引位置插入一个新的 pipe。</br>
- 一个 pipe 必须包含一个字符串类型的 ‘id’ 和 ‘handle’ 函数,该 id 在 pipeline 必须是唯一标识。
- @param pipe The pipe to be inserted
- @param index The index to insert
- */
- insertPipe(pipe: any, index: number): void;
- /**
- !en
- Insert a pipe to the end of an existing pipe. The existing pipe must be a valid pipe in the pipeline.
- !zh
- 在当前 pipeline 的一个已知 pipe 后面插入一个新的 pipe。
- @param refPipe An existing pipe in the pipeline.
- @param newPipe The pipe to be inserted.
- */
- insertPipeAfter(refPipe: any, newPipe: any): void;
- /**
- !#en
- Add a new pipe at the end of the pipeline. </br>
- A pipe must contain an `id` in string and a `handle` function, the id must be unique in the pipeline.
- !#zh
- 添加一个新的 pipe 到 pipeline 尾部。 </br>
- 该 pipe 必须包含一个字符串类型 ‘id’ 和 ‘handle’ 函数,该 id 在 pipeline 必须是唯一标识。
- @param pipe The pipe to be appended
- */
- appendPipe(pipe: any): void;
- /**
- !#en
- Let new items flow into the pipeline. </br>
- Each item can be a simple url string or an object,
- if it's an object, it must contain `id` property. </br>
- You can specify its type by `type` property, by default, the type is the extension name in url. </br>
- By adding a `skips` property including pipe ids, you can skip these pipe. </br>
- The object can contain any supplementary property as you want. </br>
- !#zh
- 让新的 item 流入 pipeline 中。</br>
- 这里的每个 item 可以是一个简单字符串类型的 url 或者是一个对象,
- 如果它是一个对象的话,他必须要包含 ‘id’ 属性。</br>
- 你也可以指定它的 ‘type’ 属性类型,默认情况下,该类型是 ‘url’ 的后缀名。</br>
- 也通过添加一个 包含 ‘skips’ 属性的 item 对象,你就可以跳过 skips 中包含的 pipe。</br>
- 该对象可以包含任何附加属性。
- @param items items
-
- @example
- ```js
- pipeline.flowIn([
- 'res/Background.png',
- {
- id: 'res/scene.json',
- type: 'scene',
- name: 'scene',
- skips: ['Downloader']
- }
- ]);
- ```
- */
- flowIn(items: any[]): void;
- /**
- !#en
- Let new items flow into the pipeline and give a callback when the list of items are all completed. </br>
- This is for loading dependencies for an existing item in flow, usually used in a pipe logic. </br>
- For example, we have a loader for scene configuration file in JSON, the scene will only be fully loaded </br>
- after all its dependencies are loaded, then you will need to use function to flow in all dependencies </br>
- found in the configuration file, and finish the loader pipe only after all dependencies are loaded (in the callback).
- !#zh
- 让新 items 流入 pipeline 并且当 item 列表完成时进行回调函数。</br>
- 这个 API 的使用通常是为了加载依赖项。</br>
- 例如:</br>
- 我们需要加载一个场景配置的 JSON 文件,该场景会将所有的依赖项全部都加载完毕以后,进行回调表示加载完毕。
- @param urlList urlList
- @param callback callback
- */
- flowInDeps(urlList: any[], callback: Function): any[];
- /**
- !#en
- Copy the item states from one source item to all destination items. </br>
- It's quite useful when a pipe generate new items from one source item,</br>
- then you should flowIn these generated items into pipeline, </br>
- but you probably want them to skip all pipes the source item already go through,</br>
- you can achieve it with this API. </br>
- </br>
- For example, an unzip pipe will generate more items, but you won't want them to pass unzip or download pipe again.
- !#zh
- 从一个源 item 向所有目标 item 复制它的 pipe 状态,用于避免重复通过部分 pipe。</br>
- 当一个源 item 生成了一系列新的 items 时很有用,</br>
- 你希望让这些新的依赖项进入 pipeline,但是又不希望它们通过源 item 已经经过的 pipe,</br>
- 但是你可能希望他们源 item 已经通过并跳过所有 pipes,</br>
- 这个时候就可以使用这个 API。
- @param srcItem The source item
- @param dstItems A single destination item or an array of destination items
- */
- copyItemStates(srcItem: any, dstItems: any[]|any): void;
- /**
- !#en Returns whether the pipeline is flowing (contains item) currently.
- !#zh 获取 pipeline 当前是否正在处理中。
- */
- isFlowing(): boolean;
- /**
- !#en Returns all items in pipeline. Returns null, please use API of Loader or LoadingItems.
- !#zh 获取 pipeline 中的所有 items。返回 null,请使用 Loader / LoadingItems API。
- */
- getItems(): LoadingItems;
- /**
- !#en Returns an item in pipeline.
- !#zh 根据 id 获取一个 item
- @param id The id of the item
- */
- getItem(id: any): any;
- /**
- !#en Removes an completed item in pipeline.
- It will only remove the cache in the pipeline or loader, its dependencies won't be released.
- cc.loader provided another method to completely cleanup the resource and its dependencies,
- please refer to {{#crossLink "loader/release:method"}}cc.loader.release{{/crossLink}}
- !#zh 移除指定的已完成 item。
- 这将仅仅从 pipeline 或者 loader 中删除其缓存,并不会释放它所依赖的资源。
- cc.loader 中提供了另一种删除资源及其依赖的清理方法,请参考 {{#crossLink "loader/release:method"}}cc.loader.release{{/crossLink}}
- @param id The id of the item
- */
- removeItem(id: any): boolean;
- /**
- !#en Clear the current pipeline, this function will clean up the items.
- !#zh 清空当前 pipeline,该函数将清理 items。
- */
- clear(): void;
- }
- /** undefined */
- export class Graphics extends _RendererUnderSG {
- /** !#en
- Current line width.
- !#zh
- 当前线条宽度 */
- lineWidth: number;
- /** !#en
- lineJoin determines how two connecting segments (of lines, arcs or curves) with non-zero lengths in a shape are joined together.
- !#zh
- lineJoin 用来设置2个长度不为0的相连部分(线段,圆弧,曲线)如何连接在一起的属性。 */
- lineJoin: Graphics.LineJoin;
- /** !#en
- lineCap determines how the end points of every line are drawn.
- !#zh
- lineCap 指定如何绘制每一条线段末端。 */
- lineCap: Graphics.LineCap;
- /** !#en
- stroke color
- !#zh
- 线段颜色 */
- strokeColor: Color;
- /** !#en
- fill color
- !#zh
- 填充颜色 */
- fillColor: Color;
- /** !#en
- Sets the miter limit ratio
- !#zh
- 设置斜接面限制比例 */
- miterLimit: number;
- /**
- !#en Move path start point to (x,y).
- !#zh 移动路径起点到坐标(x, y)
- @param x The x axis of the coordinate for the end point.
- @param y The y axis of the coordinate for the end point.
- */
- moveTo(x?: number, y?: number): void;
- /**
- !#en Adds a straight line to the path
- !#zh 绘制直线路径
- @param x The x axis of the coordinate for the end point.
- @param y The y axis of the coordinate for the end point.
- */
- lineTo(x?: number, y?: number): void;
- /**
- !#en Adds a cubic Bézier curve to the path
- !#zh 绘制三次贝赛尔曲线路径
- @param c1x The x axis of the coordinate for the first control point.
- @param c1y The y axis of the coordinate for first control point.
- @param c2x The x axis of the coordinate for the second control point.
- @param c2y The y axis of the coordinate for the second control point.
- @param x The x axis of the coordinate for the end point.
- @param y The y axis of the coordinate for the end point.
- */
- bezierCurveTo(c1x?: number, c1y?: number, c2x?: number, c2y?: number, x?: number, y?: number): void;
- /**
- !#en Adds a quadratic Bézier curve to the path
- !#zh 绘制二次贝赛尔曲线路径
- @param cx The x axis of the coordinate for the control point.
- @param cy The y axis of the coordinate for the control point.
- @param x The x axis of the coordinate for the end point.
- @param y The y axis of the coordinate for the end point.
- */
- quadraticCurveTo(cx?: number, cy?: number, x?: number, y?: number): void;
- /**
- !#en Adds an arc to the path which is centered at (cx, cy) position with radius r starting at startAngle and ending at endAngle going in the given direction by counterclockwise (defaulting to false).
- !#zh 绘制圆弧路径。圆弧路径的圆心在 (cx, cy) 位置,半径为 r ,根据 counterclockwise (默认为false)指定的方向从 startAngle 开始绘制,到 endAngle 结束。
- @param cx The x axis of the coordinate for the center point.
- @param cy The y axis of the coordinate for the center point.
- @param r The arc's radius.
- @param startAngle The angle at which the arc starts, measured clockwise from the positive x axis and expressed in radians.
- @param endAngle The angle at which the arc ends, measured clockwise from the positive x axis and expressed in radians.
- @param counterclockwise An optional Boolean which, if true, causes the arc to be drawn counter-clockwise between the two angles. By default it is drawn clockwise.
- */
- arc(cx?: number, cy?: number, r?: number, startAngle?: number, endAngle?: number, counterclockwise?: boolean): void;
- /**
- !#en Adds an ellipse to the path.
- !#zh 绘制椭圆路径。
- @param cx The x axis of the coordinate for the center point.
- @param cy The y axis of the coordinate for the center point.
- @param rx The ellipse's x-axis radius.
- @param ry The ellipse's y-axis radius.
- */
- ellipse(cx?: number, cy?: number, rx?: number, ry?: number): void;
- /**
- !#en Adds an circle to the path.
- !#zh 绘制圆形路径。
- @param cx The x axis of the coordinate for the center point.
- @param cy The y axis of the coordinate for the center point.
- @param r The circle's radius.
- */
- circle(cx?: number, cy?: number, r?: number): void;
- /**
- !#en Adds an rectangle to the path.
- !#zh 绘制矩形路径。
- @param x The x axis of the coordinate for the rectangle starting point.
- @param y The y axis of the coordinate for the rectangle starting point.
- @param w The rectangle's width.
- @param h The rectangle's height.
- */
- rect(x?: number, y?: number, w?: number, h?: number): void;
- /**
- !#en Adds an round corner rectangle to the path.
- !#zh 绘制圆角矩形路径。
- @param x The x axis of the coordinate for the rectangle starting point.
- @param y The y axis of the coordinate for the rectangle starting point.
- @param w The rectangles width.
- @param h The rectangle's height.
- @param r The radius of the rectangle.
- */
- roundRect(x?: number, y?: number, w?: number, h?: number, r?: number): void;
- /**
- !#en Draws a filled rectangle.
- !#zh 绘制填充矩形。
- @param x The x axis of the coordinate for the rectangle starting point.
- @param y The y axis of the coordinate for the rectangle starting point.
- @param w The rectangle's width.
- @param h The rectangle's height.
- */
- fillRect(x?: number, y?: number, w?: number, h?: number): void;
- /**
- !#en Erasing any previously drawn content.
- !#zh 擦除之前绘制的所有内容的方法。
- @param clean Whether to clean the graphics inner cache.
- */
- clear(clean?: boolean): void;
- /**
- !#en Causes the point of the pen to move back to the start of the current path. It tries to add a straight line from the current point to the start.
- !#zh 将笔点返回到当前路径起始点的。它尝试从当前点到起始点绘制一条直线。
- */
- close(): void;
- /**
- !#en Strokes the current or given path with the current stroke style.
- !#zh 根据当前的画线样式,绘制当前或已经存在的路径。
- */
- stroke(): void;
- /**
- !#en Fills the current or given path with the current fill style.
- !#zh 根据当前的画线样式,填充当前或已经存在的路径。
- */
- fill(): void;
- }
- /** undefined */
- export class WorldManifold {
- /** !#en
- world contact point (point of intersection)
- !#zh
- 碰撞点集合 */
- points: [Vec2];
- /** !#en
- world vector pointing from A to B
- !#zh
- 世界坐标系下由 A 指向 B 的向量 */
- normal: Vec2;
- }
- /** !#en
- A manifold point is a contact point belonging to a contact manifold.
- It holds details related to the geometry and dynamics of the contact points.
- Note: the impulses are used for internal caching and may not
- provide reliable contact forces, especially for high speed collisions.
- !#zh
- ManifoldPoint 是接触信息中的接触点信息。它拥有关于几何和接触点的详细信息。
- 注意:信息中的冲量用于系统内部缓存,提供的接触力可能不是很准确,特别是高速移动中的碰撞信息。 */
- export class ManifoldPoint {
- /** !#en
- The local point usage depends on the manifold type:
- -e_circles: the local center of circleB
- -e_faceA: the local center of circleB or the clip point of polygonB
- -e_faceB: the clip point of polygonA
- !#zh
- 本地坐标点的用途取决于 manifold 的类型
- - e_circles: circleB 的本地中心点
- - e_faceA: circleB 的本地中心点 或者是 polygonB 的截取点
- - e_faceB: polygonB 的截取点 */
- localPoint: Vec2;
- /** !#en
- Normal impulse.
- !#zh
- 法线冲量。 */
- normalImpulse: number;
- /** !#en
- Tangent impulse.
- !#zh
- 切线冲量。 */
- tangentImpulse: number;
- }
- /** undefined */
- export class Manifold {
- /** !#en
- Manifold type : 0: e_circles, 1: e_faceA, 2: e_faceB
- !#zh
- Manifold 类型 : 0: e_circles, 1: e_faceA, 2: e_faceB */
- type: number;
- /** !#en
- The local point usage depends on the manifold type:
- -e_circles: the local center of circleA
- -e_faceA: the center of faceA
- -e_faceB: the center of faceB
- !#zh
- 用途取决于 manifold 类型
- -e_circles: circleA 的本地中心点
- -e_faceA: faceA 的本地中心点
- -e_faceB: faceB 的本地中心点 */
- localPoint: Vec2;
- /** !#en
- -e_circles: not used
- -e_faceA: the normal on polygonA
- -e_faceB: the normal on polygonB
- !#zh
- -e_circles: 没被使用到
- -e_faceA: polygonA 的法向量
- -e_faceB: polygonB 的法向量 */
- localNormal: Vec2;
- /** !#en
- the points of contact.
- !#zh
- 接触点信息。 */
- points: [ManifoldPoint];
- }
- /** !#en
- Contact impulses for reporting.
- !#zh
- 用于返回给回调的接触冲量。 */
- export class PhysicsImpulse {
- /** !#en
- Normal impulses.
- !#zh
- 法线方向的冲量 */
- normalImpulses: void;
- /** !#en
- Tangent impulses
- !#zh
- 切线方向的冲量 */
- tangentImpulses: void;
- }
- /** !#en
- PhysicsContact will be generated during begin and end collision as a parameter of the collision callback.
- Note that contacts will be reused for speed up cpu time, so do not cache anything in the contact.
- !#zh
- 物理接触会在开始和结束碰撞之间生成,并作为参数传入到碰撞回调函数中。
- 注意:传入的物理接触会被系统进行重用,所以不要在使用中缓存里面的任何信息。 */
- export class PhysicsContact {
- /**
- !#en
- Get the world manifold.
- !#zh
- 获取世界坐标系下的碰撞信息。
- */
- getWorldManifold(): WorldManifold;
- /**
- !#en
- Get the manifold.
- !#zh
- 获取本地(局部)坐标系下的碰撞信息。
- */
- getManifold(): Manifold;
- /**
- !#en
- Get the impulses.
- Note: PhysicsImpulse can only used in onPostSolve callback.
- !#zh
- 获取冲量信息
- 注意:这个信息只有在 onPostSolve 回调中才能获取到
- */
- getImpulse(): PhysicsImpulse;
- colliderA: Collider;
- colliderB: Collider;
- /** !#en
- If set disabled to true, the contact will be ignored until contact end.
- If you just want to disabled contact for current time step or sub-step, please use disabledOnce.
- !#zh
- 如果 disabled 被设置为 true,那么直到接触结束此接触都将被忽略。
- 如果只是希望在当前时间步或子步中忽略此接触,请使用 disabledOnce 。 */
- disabled: boolean;
- /** !#en
- Disabled contact for current time step or sub-step.
- !#zh
- 在当前时间步或子步中忽略此接触。 */
- disabledOnce: boolean;
- /**
- !#en
- Is this contact touching?
- !#zh
- 返回碰撞体是否已经接触到。
- */
- isTouching(): boolean;
- /**
- !#en
- Set the desired tangent speed for a conveyor belt behavior.
- !#zh
- 为传送带设置期望的切线速度
- @param tangentSpeed tangentSpeed
- */
- setTangentSpeed(tangentSpeed: number): void;
- /**
- !#en
- Get the desired tangent speed.
- !#zh
- 获取切线速度
- */
- getTangentSpeed(): number;
- /**
- !#en
- Override the default friction mixture. You can call this in onPreSolve callback.
- !#zh
- 覆盖默认的摩擦力系数。你可以在 onPreSolve 回调中调用此函数。
- @param friction friction
- */
- setFriction(friction: number): void;
- /**
- !#en
- Get the friction.
- !#zh
- 获取当前摩擦力系数
- */
- getFriction(): number;
- /**
- !#en
- Reset the friction mixture to the default value.
- !#zh
- 重置摩擦力系数到默认值
- */
- resetFriction(): void;
- /**
- !#en
- Override the default restitution mixture. You can call this in onPreSolve callback.
- !#zh
- 覆盖默认的恢复系数。你可以在 onPreSolve 回调中调用此函数。
- @param restitution restitution
- */
- setRestitution(restitution: number): void;
- /**
- !#en
- Get the restitution.
- !#zh
- 获取当前恢复系数
- */
- getRestitution(): number;
- /**
- !#en
- Reset the restitution mixture to the default value.
- !#zh
- 重置恢复系数到默认值
- */
- resetRestitution(): void;
- }
- /** !#en
- Physics manager uses box2d as the inner physics system, and hide most box2d implement details(creating rigidbody, synchronize rigidbody info to node).
- You can visit some common box2d function through physics manager(hit testing, raycast, debug info).
- Physics manager distributes the collision information to each collision callback when collision is produced.
- Note: You need first enable the collision listener in the rigidbody.
- !#zh
- 物理系统将 box2d 作为内部物理系统,并且隐藏了大部分 box2d 实现细节(比如创建刚体,同步刚体信息到节点中等)。
- 你可以通过物理系统访问一些 box2d 常用的功能,比如点击测试,射线测试,设置测试信息等。
- 物理系统还管理碰撞信息的分发,她会在产生碰撞时,将碰撞信息分发到各个碰撞回调中。
- 注意:你需要先在刚体中开启碰撞接听才会产生相应的碰撞回调。 */
- export class PhysicsManager implements EventTarget {
- /** !#en
- The draw bits for drawing physics debug information.
- !#zh
- 指定物理系统需要绘制哪些调试信息。 */
- static DrawBits: DrawBits;
- /** !#en
- The ratio transform between physics unit and pixel unit, generally is 32.
- !#zh
- 物理单位与像素单位互相转换的比率,一般是 32。 */
- static PTM_RATIO: number;
- /** !#en
- The velocity iterations for the velocity constraint solver.
- !#zh
- 速度更新迭代数 */
- static VELOCITY_ITERATIONS: number;
- /** !#en
- The position Iterations for the position constraint solver.
- !#zh
- 位置迭代更新数 */
- static POSITION_ITERATIONS: number;
- /** !#en
- Specify the fixed time step.
- Need enabledAccumulator to make it work.
- !#zh
- 指定固定的物理更新间隔时间,需要开启 enabledAccumulator 才有效。 */
- static FIXED_TIME_STEP: number;
- /** !#en
- Specify the max accumulator time.
- Need enabledAccumulator to make it work.
- !#zh
- 每次可用于更新物理系统的最大时间,需要开启 enabledAccumulator 才有效。 */
- static MAX_ACCUMULATOR: number;
- /** !#en
- If enabled accumulator, then will call step function with the fixed time step FIXED_TIME_STEP.
- And if the update dt is bigger than the time step, then will call step function several times.
- If disabled accumulator, then will call step function with a time step calculated with the frame rate.
- !#zh
- 如果开启此选项,那么将会以固定的间隔时间 FIXED_TIME_STEP 来更新物理引擎,如果一个 update 的间隔时间大于 FIXED_TIME_STEP,则会对物理引擎进行多次更新。
- 如果关闭此选项,那么将会根据设定的 frame rate 计算出一个间隔时间来更新物理引擎。 */
- enabledAccumulator: boolean;
- /**
- !#en
- Test which collider contains the given world point
- !#zh
- 获取包含给定世界坐标系点的碰撞体
- @param point the world point
- */
- testPoint(point: Vec2): PhysicsCollider;
- /**
- !#en
- Test which colliders intersect the given world rect
- !#zh
- 获取与给定世界坐标系矩形相交的碰撞体
- @param rect the world rect
- */
- testAABB(rect: Rect): [PhysicsCollider];
- /**
- !#en
- Raycast the world for all colliders in the path of the ray.
- The raycast ignores colliders that contain the starting point.
- !#zh
- 检测哪些碰撞体在给定射线的路径上,射线检测将忽略包含起始点的碰撞体。
- @param p1 start point of the raycast
- @param p2 end point of the raycast
- @param type optional, default is RayCastType.Closest
- */
- rayCast(p1: Vec2, p2: Vec2, type: RayCastType): [PhysicsRayCastResult];
- /**
- !#en
- Attach physics debug draw to camera
- !#zh
- 将物理的调试绘制信息附加到指定摄像机上
- @param camera camera
- */
- attachDebugDrawToCamera(camera: Camera): void;
- /**
- !#en
- Detach physics debug draw to camera
- !#zh
- 将物理的调试绘制信息从指定摄像机上移除
- @param camera camera
- */
- detachDebugDrawFromCamera(camera: Camera): void;
- /** !#en
- Enabled the physics manager?
- !#zh
- 指定是否启用物理系统? */
- enabled: boolean;
- /** !#en
- Debug draw flags.
- !#zh
- 设置调试绘制标志 */
- debugDrawFlags: number;
- /** !#en
- The physics world gravity.
- !#zh
- 物理世界重力值 */
- gravity: Vec2;
- /**
- !#en
- Register an callback of a specific event type on the EventTarget.
- !#zh
- 注册事件目标的特定事件类型回调。
- @param type A string representing the event type to listen for.
- @param callback The callback that will be invoked when the event is dispatched.
- The callback is ignored if it is a duplicate (the callbacks are unique).
- @param target The target (this object) to invoke the callback, can be null
- @param useCapture When set to true, the capture argument prevents callback
- from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE.
- When false, callback will NOT be invoked when event's eventPhase attribute value is CAPTURING_PHASE.
- Either way, callback will be invoked when event's eventPhase attribute value is AT_TARGET.
-
- @example
- ```js
- node.on(cc.Node.EventType.TOUCH_END, function (event) {
- cc.log("this is callback");
- }, node);
- ```
- */
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export enum DrawBits {
- e_aabbBit = 0,
- e_pairBit = 0,
- e_centerOfMassBit = 0,
- e_jointBit = 0,
- e_shapeBit = 0,
- }
-
- export class PhysicsRayCastResult {
-
- collider: PhysicsCollider;
-
- point: Vec2;
-
- normal: Vec2;
-
- fraction: number;
- }
-
- export enum RigidBodyType {
- Static = 0,
- Kinematic = 0,
- Dynamic = 0,
- Animated = 0,
- }
-
- export enum RayCastType {
- Closest = 0,
- Any = 0,
- AllClosest = 0,
- All = 0,
- }
-
- export class RigidBody extends Component {
-
- enabledContactListener: boolean;
-
- onBeginContact(contact: PhysicsContact, selfCollider: PhysicsCollider, otherCollider: PhysicsCollider): void;
-
- onEndContact(contact: PhysicsContact, selfCollider: PhysicsCollider, otherCollider: PhysicsCollider): void;
-
- onPreSolve(contact: PhysicsContact, selfCollider: PhysicsCollider, otherCollider: PhysicsCollider): void;
-
- onPostSolve(contact: PhysicsContact, selfCollider: PhysicsCollider, otherCollider: PhysicsCollider): void;
-
- bullet: boolean;
-
- type: RigidBodyType;
-
- allowSleep: boolean;
-
- gravityScale: number;
-
- linearDamping: number;
-
- angularDamping: number;
-
- linearVelocity: Vec2;
-
- angularVelocity: number;
-
- fixedRotation: boolean;
-
- awake: boolean;
-
- active: boolean;
-
- getLocalPoint(worldPoint: Vec2, out: Vec2): Vec2;
-
- getWorldPoint(localPoint: Vec2, out: Vec2): Vec2;
-
- getWorldVector(localVector: Vec2, out: Vec2): Vec2;
-
- getLocalVector(worldVector: Vec2, out: Vec2): Vec2;
-
- getWorldPosition(out: Vec2): Vec2;
-
- getWorldRotation(): number;
-
- getLocalCenter(): Vec2;
-
- getWorldCenter(): Vec2;
-
- getLinearVelocityFromWorldPoint(worldPoint: Vec2, out: Vec2): Vec2;
-
- getMass(): number;
-
- getInertia(): number;
-
- getJointList(): [Joint];
-
- applyForce(force: Vec2, point: Vec2, wake: boolean): void;
-
- applyForceToCenter(force: Vec2, wake: boolean): void;
-
- applyTorque(torque: number, wake: boolean): void;
-
- applyLinearImpulse(impulse: Vec2, point: Vec2, wake: boolean): void;
-
- applyAngularImpulse(impulse: number, wake: boolean): void;
-
- syncPosition(enableAnimated: boolean): void;
-
- syncRotation(enableAnimated: boolean): void;
- }
-
- export enum KEY {
- none = 0,
- back = 0,
- menu = 0,
- backspace = 0,
- tab = 0,
- enter = 0,
- shift = 0,
- ctrl = 0,
- alt = 0,
- pause = 0,
- capslock = 0,
- escape = 0,
- space = 0,
- pageup = 0,
- pagedown = 0,
- end = 0,
- home = 0,
- left = 0,
- up = 0,
- right = 0,
- down = 0,
- select = 0,
- insert = 0,
- Delete = 0,
- a = 0,
- b = 0,
- c = 0,
- d = 0,
- e = 0,
- f = 0,
- g = 0,
- h = 0,
- i = 0,
- j = 0,
- k = 0,
- l = 0,
- m = 0,
- n = 0,
- o = 0,
- p = 0,
- q = 0,
- r = 0,
- s = 0,
- t = 0,
- u = 0,
- v = 0,
- w = 0,
- x = 0,
- y = 0,
- z = 0,
- num0 = 0,
- num1 = 0,
- num2 = 0,
- num3 = 0,
- num4 = 0,
- num5 = 0,
- num6 = 0,
- num7 = 0,
- num8 = 0,
- num9 = 0,
- '*' = 0,
- '+' = 0,
- '-' = 0,
- numdel = 0,
- '/' = 0,
- f1 = 0,
- f2 = 0,
- f3 = 0,
- f4 = 0,
- f5 = 0,
- f6 = 0,
- f7 = 0,
- f8 = 0,
- f9 = 0,
- f10 = 0,
- f11 = 0,
- f12 = 0,
- numlock = 0,
- scrolllock = 0,
- ';' = 0,
- semicolon = 0,
- equal = 0,
- '=' = 0,
- ',' = 0,
- comma = 0,
- dash = 0,
- '.' = 0,
- period = 0,
- forwardslash = 0,
- grave = 0,
- '[' = 0,
- openbracket = 0,
- backslash = 0,
- ']' = 0,
- closebracket = 0,
- quote = 0,
- dpadLeft = 0,
- dpadRight = 0,
- dpadUp = 0,
- dpadDown = 0,
- dpadCenter = 0,
- }
-
- export enum ImageFormat {
- JPG = 0,
- PNG = 0,
- TIFF = 0,
- WEBP = 0,
- PVR = 0,
- ETC = 0,
- S3TC = 0,
- ATITC = 0,
- TGA = 0,
- RAWDATA = 0,
- UNKNOWN = 0,
- getImageFormatByData = 0,
- }
-
- export enum macro {
- INVALID_INDEX = 0,
- NODE_TAG_INVALID = 0,
- PI = 0,
- PI2 = 0,
- FLT_MAX = 0,
- FLT_MIN = 0,
- RAD = 0,
- DEG = 0,
- UINT_MAX = 0,
- REPEAT_FOREVER = 0,
- FLT_EPSILON = 0,
- ONE = 0,
- ZERO = 0,
- SRC_ALPHA = 0,
- SRC_ALPHA_SATURATE = 0,
- SRC_COLOR = 0,
- DST_ALPHA = 0,
- DST_COLOR = 0,
- ONE_MINUS_SRC_ALPHA = 0,
- ONE_MINUS_SRC_COLOR = 0,
- ONE_MINUS_DST_ALPHA = 0,
- ONE_MINUS_DST_COLOR = 0,
- ONE_MINUS_CONSTANT_ALPHA = 0,
- ONE_MINUS_CONSTANT_COLOR = 0,
- LINEAR = 0,
- BLEND_DST = 0,
- WEB_ORIENTATION_PORTRAIT = 0,
- WEB_ORIENTATION_LANDSCAPE_LEFT = 0,
- WEB_ORIENTATION_PORTRAIT_UPSIDE_DOWN = 0,
- WEB_ORIENTATION_LANDSCAPE_RIGHT = 0,
- ORIENTATION_PORTRAIT = 0,
- ORIENTATION_LANDSCAPE = 0,
- ORIENTATION_AUTO = 0,
- VERTEX_ATTRIB_FLAG_NONE = 0,
- VERTEX_ATTRIB_FLAG_POSITION = 0,
- VERTEX_ATTRIB_FLAG_COLOR = 0,
- VERTEX_ATTRIB_FLAG_TEX_COORDS = 0,
- VERTEX_ATTRIB_FLAG_POS_COLOR_TEX = 0,
- GL_ALL = 0,
- VERTEX_ATTRIB_POSITION = 0,
- VERTEX_ATTRIB_COLOR = 0,
- VERTEX_ATTRIB_TEX_COORDS = 0,
- VERTEX_ATTRIB_MAX = 0,
- UNIFORM_PMATRIX = 0,
- UNIFORM_MVMATRIX = 0,
- UNIFORM_MVPMATRIX = 0,
- UNIFORM_TIME = 0,
- UNIFORM_SINTIME = 0,
- UNIFORM_COSTIME = 0,
- UNIFORM_RANDOM01 = 0,
- UNIFORM_SAMPLER = 0,
- UNIFORM_MAX = 0,
- SHADER_POSITION_TEXTURECOLOR = 0,
- SHADER_SPRITE_POSITION_TEXTURECOLOR = 0,
- SHADER_POSITION_TEXTURECOLORALPHATEST = 0,
- SHADER_SPRITE_POSITION_TEXTURECOLORALPHATEST = 0,
- SHADER_POSITION_COLOR = 0,
- SHADER_SPRITE_POSITION_COLOR = 0,
- SHADER_POSITION_TEXTURE = 0,
- SHADER_POSITION_TEXTURE_UCOLOR = 0,
- SHADER_POSITION_TEXTUREA8COLOR = 0,
- SHADER_POSITION_UCOLOR = 0,
- SHADER_POSITION_LENGTHTEXTURECOLOR = 0,
- UNIFORM_PMATRIX_S = 0,
- UNIFORM_MVMATRIX_S = 0,
- UNIFORM_MVPMATRIX_S = 0,
- UNIFORM_TIME_S = 0,
- UNIFORM_SINTIME_S = 0,
- UNIFORM_COSTIME_S = 0,
- UNIFORM_RANDOM01_S = 0,
- UNIFORM_SAMPLER_S = 0,
- UNIFORM_ALPHA_TEST_VALUE_S = 0,
- ATTRIBUTE_NAME_COLOR = 0,
- ATTRIBUTE_NAME_POSITION = 0,
- ATTRIBUTE_NAME_TEX_COORD = 0,
- ITEM_SIZE = 0,
- CURRENT_ITEM = 0,
- ZOOM_ACTION_TAG = 0,
- NORMAL_TAG = 0,
- SELECTED_TAG = 0,
- DISABLE_TAG = 0,
- FIX_ARTIFACTS_BY_STRECHING_TEXEL = 0,
- FIX_ARTIFACTS_BY_STRECHING_TEXEL_TMX = 0,
- DIRECTOR_STATS_POSITION = 0,
- DIRECTOR_FPS_INTERVAL = 0,
- COCOSNODE_RENDER_SUBPIXEL = 0,
- SPRITEBATCHNODE_RENDER_SUBPIXEL = 0,
- AUTO_PREMULTIPLIED_ALPHA_FOR_PNG = 0,
- OPTIMIZE_BLEND_FUNC_FOR_PREMULTIPLIED_ALPHA = 0,
- TEXTURE_NPOT_SUPPORT = 0,
- USE_LA88_LABELS = 0,
- SPRITE_DEBUG_DRAW = 0,
- LABELBMFONT_DEBUG_DRAW = 0,
- LABELATLAS_DEBUG_DRAW = 0,
- ENABLE_STACKABLE_ACTIONS = 0,
- ENABLE_GL_STATE_CACHE = 0,
- TOUCH_TIMEOUT = 0,
- BATCH_VERTEX_COUNT = 0,
- ENABLE_GC_FOR_NATIVE_OBJECTS = 0,
- ENABLE_TILEDMAP_CULLING = 0,
- DOWNLOAD_MAX_CONCURRENT = 0,
- ENABLE_TRANSPARENT_CANVAS = 0,
- ENABLE_WEBGL_ANTIALIAS = 0,
- ENABLE_CULLING = 0,
- BLEND_SRC = 0,
- }
-
- export class Object {
-
- name: string;
-
- isValid: boolean;
-
- destroy(): boolean;
- }
-
- export enum Flags {
- DontSave = 0,
- EditorOnly = 0,
- }
-
- export class screen {
-
- init(): void;
-
- fullScreen(): boolean;
-
- requestFullScreen(element: Element, onFullScreenChange: Function): void;
-
- exitFullScreen(): boolean;
-
- autoFullScreen(element: Element, onFullScreenChange: Function): void;
- }
-
- export class sys {
-
- static LANGUAGE_ENGLISH: string;
-
- static LANGUAGE_CHINESE: string;
-
- static LANGUAGE_FRENCH: string;
-
- static LANGUAGE_ITALIAN: string;
-
- static LANGUAGE_GERMAN: string;
-
- static LANGUAGE_SPANISH: string;
-
- static LANGUAGE_DUTCH: string;
-
- static LANGUAGE_RUSSIAN: string;
-
- static LANGUAGE_KOREAN: string;
-
- static LANGUAGE_JAPANESE: string;
-
- static LANGUAGE_HUNGARIAN: string;
-
- static LANGUAGE_PORTUGUESE: string;
-
- static LANGUAGE_ARABIC: string;
-
- static LANGUAGE_NORWEGIAN: string;
-
- static LANGUAGE_POLISH: string;
-
- static LANGUAGE_TURKISH: string;
-
- static LANGUAGE_UKRAINIAN: string;
-
- static LANGUAGE_ROMANIAN: string;
-
- static LANGUAGE_BULGARIAN: string;
-
- static LANGUAGE_UNKNOWN: string;
- static OS_IOS: string;
- static OS_ANDROID: string;
- static OS_WINDOWS: string;
- static OS_MARMALADE: string;
- static OS_LINUX: string;
- static OS_BADA: string;
- static OS_BLACKBERRY: string;
- static OS_OSX: string;
- static OS_WP8: string;
- static OS_WINRT: string;
- static OS_UNKNOWN: string;
- static UNKNOWN: number;
- static WIN32: number;
- static LINUX: number;
- static MACOS: number;
- static ANDROID: number;
- static IPHONE: number;
- static IPAD: number;
- static BLACKBERRY: number;
- static NACL: number;
- static EMSCRIPTEN: number;
- static TIZEN: number;
- static WINRT: number;
- static WP8: number;
- static MOBILE_BROWSER: number;
- static DESKTOP_BROWSER: number;
-
- static EDITOR_PAGE: number;
-
- static EDITOR_CORE: number;
- static WECHAT_GAME: number;
- static QQ_PLAY: number;
-
- static BROWSER_TYPE_WECHAT: string;
-
- static BROWSER_TYPE_WECHAT_GAME: string;
-
- static BROWSER_TYPE_QQ_PLAY: string;
- static BROWSER_TYPE_ANDROID: string;
- static BROWSER_TYPE_IE: string;
- static BROWSER_TYPE_QQ: string;
- static BROWSER_TYPE_MOBILE_QQ: string;
- static BROWSER_TYPE_UC: string;
-
- static BROWSER_TYPE_UCBS: string;
- static BROWSER_TYPE_360: string;
- static BROWSER_TYPE_BAIDU_APP: string;
- static BROWSER_TYPE_BAIDU: string;
- static BROWSER_TYPE_MAXTHON: string;
- static BROWSER_TYPE_OPERA: string;
- static BROWSER_TYPE_OUPENG: string;
- static BROWSER_TYPE_MIUI: string;
- static BROWSER_TYPE_FIREFOX: string;
- static BROWSER_TYPE_SAFARI: string;
- static BROWSER_TYPE_CHROME: string;
- static BROWSER_TYPE_LIEBAO: string;
- static BROWSER_TYPE_QZONE: string;
- static BROWSER_TYPE_SOUGOU: string;
- static BROWSER_TYPE_UNKNOWN: string;
-
- static getBatteryLevel(): number;
-
- static getNetworkType(): NetworkType;
-
- static isNative: boolean;
-
- static isBrowser: boolean;
-
- static isMobile: boolean;
-
- static platform: number;
-
- static language: string;
-
- static os: string;
-
- static osVersion: string;
-
- static osMainVersion: number;
-
- static browserType: string;
-
- static browserVersion: string;
-
- static windowPixelResolution: Size;
-
- static localStorage: any;
-
- static capabilities: any;
-
- static garbageCollect(): void;
-
- static dumpRoot(): void;
-
- static restartVM(): void;
-
- static cleanScript(jsfile: string): void;
-
- static isObjectValid(obj: any): boolean;
-
- static dump(): void;
-
- static openURL(url: string): void;
-
- static now(): number;
- }
-
- export enum NetworkType {
- NONE = 0,
- LAN = 0,
- WWAN = 0,
- }
-
- export class View {
-
- setTargetDensityDPI(densityDPI: string): void;
-
- getTargetDensityDPI(): string;
-
- resizeWithBrowserSize(enabled: boolean): void;
-
- setResizeCallback(callback: Function|void): void;
-
- setOrientation(orientation: number): void;
-
- adjustViewPort(enabled: boolean): void;
-
- enableRetina(enabled: boolean): void;
-
- isRetinaEnabled(): boolean;
-
- enableAntiAlias(enabled: boolean): void;
-
- isAntiAliasEnabled(): boolean;
-
- enableAutoFullScreen(enabled: boolean): void;
-
- isAutoFullScreenEnabled(): boolean;
-
- isViewReady(): boolean;
-
- setContentTranslateLeftTop(offsetLeft: number, offsetTop: number): void;
-
- getContentTranslateLeftTop(): Size;
-
- getFrameSize(): Size;
-
- setFrameSize(width: number, height: number): void;
-
- getVisibleSize(): Size;
-
- getVisibleSizeInPixel(): Size;
-
- getVisibleOrigin(): Vec2;
-
- getVisibleOriginInPixel(): Vec2;
-
- canSetContentScaleFactor(): boolean;
-
- getResolutionPolicy(): ResolutionPolicy;
-
- setResolutionPolicy(resolutionPolicy: ResolutionPolicy|number): void;
-
- setDesignResolutionSize(width: number, height: number, resolutionPolicy: ResolutionPolicy|number): void;
-
- getDesignResolutionSize(): Size;
-
- setRealPixelResolution(width: number, height: number, resolutionPolicy: ResolutionPolicy|number): void;
-
- setViewPortInPoints(x: number, y: number, w: number, h: number): void;
-
- setScissorInPoints(x: number, y: number, w: number, h: number): void;
-
- isScissorEnabled(): boolean;
-
- getScissorRect(): Rect;
-
- setViewName(viewName: string): void;
-
- getViewName(): string;
-
- getViewPortRect(): Rect;
-
- getScaleX(): number;
-
- getScaleY(): number;
-
- getDevicePixelRatio(): number;
-
- convertToLocationInView(tx: number, ty: number, relatedPos: any): Vec2;
- }
-
- export class ContainerStrategy {
-
- preApply(view: View): void;
-
- apply(view: View, designedResolution: Size): void;
-
- postApply(view: View): void;
- }
-
- export class ContentStrategy {
-
- preApply(view: View): void;
-
- apply(view: View, designedResolution: Size): any;
-
- postApply(view: View): void;
- }
-
- export class EqualToFrame extends ContainerStrategy {
- }
-
- export class ProportionalToFrame extends ContainerStrategy {
- }
-
- export class EqualToWindow extends EqualToFrame {
- }
-
- export class ProportionalToWindow extends ProportionalToFrame {
- }
-
- export class OriginalContainer extends ContainerStrategy {
- }
-
- export class ResolutionPolicy {
-
- constructor(containerStg: ContainerStrategy, contentStg: ContentStrategy);
-
- preApply(view: View): void;
-
- apply(view: View, designedResolution: Size): any;
-
- postApply(view: View): void;
-
- setContainerStrategy(containerStg: ContainerStrategy): void;
-
- setContentStrategy(contentStg: ContentStrategy): void;
-
- static EXACT_FIT: number;
-
- static NO_BORDER: number;
-
- static SHOW_ALL: number;
-
- static FIXED_HEIGHT: number;
-
- static FIXED_WIDTH: number;
-
- static UNKNOWN: number;
- }
-
- export class visibleRect {
-
- init(visibleRect: Rect): void;
-
- topLeft: Vec2;
-
- topRight: Vec2;
-
- top: Vec2;
-
- bottomLeft: Vec2;
-
- bottomRight: Vec2;
-
- bottom: Vec2;
-
- center: Vec2;
-
- left: Vec2;
-
- right: Vec2;
-
- width: number;
-
- height: number;
- }
-
- export class _CallbacksHandler {
-
- add(key: string, callback: Function, target?: any): void;
-
- has(key: string, callback?: Function, target?: any): boolean;
-
- removeAll(keyOrTarget: string|any): void;
-
- remove(key: string, callback: Function, target?: any): void;
- }
-
- export class CallbacksInvoker extends _CallbacksHandler {
-
- invoke(key: string, p1?: any, p2?: any, p3?: any, p4?: any, p5?: any): void;
- }
-
- export class Details {
-
- uuidList: string[];
-
- uuidObjList: any[];
-
- uuidPropList: string[];
- reset(): void;
-
- push(obj: any, propName: string, uuid: string): void;
- }
-
- export class url {
-
- static raw(url: string): string;
- }
-
- export class SpriteFrame extends Asset implements EventTarget {
-
- constructor(filename?: string|Texture2D, rect?: Rect, rotated?: boolean, offset?: Vec2, originalSize?: Size);
-
- insetTop: number;
-
- insetBottom: number;
-
- insetLeft: number;
-
- insetRight: number;
-
- textureLoaded(): boolean;
-
- addLoadedEventListener(callback: Function, target: any): void;
-
- isRotated(): boolean;
-
- setRotated(bRotated: boolean): void;
-
- getRect(): Rect;
-
- setRect(rect: Rect): void;
-
- getOriginalSize(): Size;
-
- setOriginalSize(size: Size): void;
-
- getTexture(): Texture2D;
-
- getOffset(): Vec2;
-
- setOffset(offsets: Vec2): void;
-
- clone(): SpriteFrame;
-
- setTexture(textureOrTextureFile: string|Texture2D, rect?: Rect, rotated?: boolean, offset?: Vec2, originalSize?: Size): boolean;
-
- ensureLoadTexture(): void;
-
- clearTexture(): void;
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export class Texture2D extends Asset implements EventTarget {
-
- url: string;
-
- width: number;
-
- height: number;
-
- update(options: {image: DOMImageElement; mipmap: boolean; format: PixelFormat; minFilter: Filter; magFilter: Filter; wrapS: WrapMode; wrapT: WrapMode; premultiplyAlpha: boolean; }): void;
-
- getPixelWidth(): number;
-
- getPixelHeight(): number;
-
- getContentSize(): Size;
-
- getContentSizeInPixels(): Size;
-
- initWithElement(element: HTMLImageElement|HTMLCanvasElement): void;
-
- initWithData(data: TypedArray, pixelFormat: number, pixelsWidth: number, pixelsHeight: number, contentSize: Size): boolean;
-
- initWithImage(uiImage: HTMLImageElement): boolean;
-
- getHtmlElementObj(): HTMLImageElement;
-
- isLoaded(): boolean;
-
- handleLoadedTexture(): void;
-
- description(): string;
-
- destroy(): void;
-
- getPixelFormat(): number;
-
- hasPremultipliedAlpha(): boolean;
-
- hasMipmaps(): boolean;
-
- setTexParameters(texParams: any|number, magFilter?: number, wrapS?: Texture2D.WrapMode, wrapT?: Texture2D.WrapMode): void;
-
- setAntiAliasTexParameters(): void;
-
- setAliasTexParameters(): void;
-
- pixelFormat: number;
-
- pixelWidth: number;
-
- pixelHeight: number;
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export class textureCache {
-
- static description(): string;
-
- static getTextureForKey(textureKeyName: string): Texture2D;
-
- static getTextureColors(texture: HTMLImageElement): any[];
-
- static getAllTextures(): Texture2D[];
-
- static removeAllTextures(): void;
-
- static removeTexture(texture: HTMLImageElement): void;
-
- static removeTextureForKey(textureKeyName: string): void;
-
- static addImage(url: string, cb: Function, target: any): Texture2D;
-
- static cacheImage(path: string, texture: HTMLImageElement|HTMLCanvasElement): void;
- }
-
- export class _BaseNode extends Object implements EventTarget {
-
- name: string;
-
- uuid: string;
-
- children: Node[];
-
- childrenCount: number;
-
- active: boolean;
-
- activeInHierarchy: boolean;
-
- tag: number;
-
- constructor(name?: string);
-
- parent: Node;
-
- attr(attrs: any): void;
-
- getChildByTag(aTag: number): Node;
-
- getChildByUuid(uuid: string): Node;
-
- getChildByName(name: string): Node;
-
- insertChild(child: Node, siblingIndex: number): void;
-
- getSiblingIndex(): number;
-
- setSiblingIndex(index: number): void;
-
- removeFromParent(cleanup?: boolean): void;
-
- removeChild(child: Node, cleanup?: boolean): void;
-
- removeChildByTag(tag: number, cleanup?: boolean): void;
-
- removeAllChildren(cleanup?: boolean): void;
-
- isChildOf(parent: Node): boolean;
-
- getComponent<T extends Component>(type: {prototype: T}): T;
- getComponent(className: string): any;
-
- getComponents<T extends Component>(type: {prototype: T}): T[];
- getComponents(className: string): any[];
-
- getComponentInChildren<T extends Component>(type: {prototype: T}): T;
- getComponentInChildren(className: string): any;
-
- getComponentsInChildren<T extends Component>(type: {prototype: T}): T[];
- getComponentsInChildren(className: string): any[];
-
- addComponent<T extends Component>(type: {new(): T}): T;
- addComponent(className: string): any;
-
- removeComponent(component: string|Function|Component): void;
-
- destroyAllChildren(): void;
-
- on(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- on<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- off(type: string, callback?: Function, target?: any, useCapture?: boolean): void;
-
- targetOff(target: any): void;
-
- once(type: string, callback: (event: Event.EventCustom) => void, target?: any, useCapture?: boolean): (event: Event.EventCustom) => void;
- once<T>(type: string, callback: (event: T) => void, target?: any, useCapture?: boolean): (event: T) => void;
-
- dispatchEvent(event: Event): void;
-
- emit(message: string, detail?: any): void;
- }
-
- export class AffineTransform {
-
- affineTransformMake(a: number, b: number, c: number, d: number, tx: number, ty: number): AffineTransform;
-
- affineTransformClone(t: AffineTransform): AffineTransform;
-
- pointApplyAffineTransform(point: Vec2|number, transOrY: AffineTransform|number, t: AffineTransform): Vec2;
-
- sizeApplyAffineTransform(size: Size, t: AffineTransform): Size;
-
- affineTransformMakeIdentity(): AffineTransform;
-
- rectApplyAffineTransform(rect: Rect, anAffineTransform: AffineTransform): Rect;
-
- obbApplyAffineTransform(rect: Rect, anAffineTransform: AffineTransform, out_bl: Vec2, out_tl: Vec2, out_tr: Vec2, out_br: Vec2): void;
-
- affineTransformTranslate(t: AffineTransform, tx: number, ty: number): AffineTransform;
-
- affineTransformScale(t: AffineTransform, sx: number, sy: number): AffineTransform;
-
- affineTransformRotate(aTransform: AffineTransform, anAngle: number): AffineTransform;
-
- affineTransformConcat(t1: AffineTransform, t2: AffineTransform): AffineTransform;
-
- affineTransformConcatIn(t1: AffineTransform, t2: AffineTransform): AffineTransform;
-
- affineTransformEqualToTransform(t1: AffineTransform, t2: AffineTransform): boolean;
-
- affineTransformInvert(t: AffineTransform): AffineTransform;
-
- affineTransformInvert(t: AffineTransform, out: AffineTransform): void;
- }
-
- export class Color extends ValueType {
-
- constructor(r?: number, g?: number, b?: number, a?: number);
-
- static WHITE: Color;
-
- static BLACK: Color;
-
- static TRANSPARENT: Color;
-
- static GRAY: Color;
-
- static RED: Color;
-
- static GREEN: Color;
-
- static BLUE: Color;
-
- static YELLOW: Color;
-
- static ORANGE: Color;
-
- static CYAN: Color;
-
- static MAGENTA: Color;
-
- clone(): Color;
-
- equals(other: Color): boolean;
-
- lerp(to: Color, ratio: number, out?: Color): Color;
-
- toString(): string;
-
- getR(): number;
-
- setR(red: number): Color;
-
- getG(): number;
-
- setG(green: number): Color;
-
- getB(): number;
-
- setB(blue: number): Color;
-
- getA(): number;
-
- setA(alpha: number): Color;
-
- toCSS(opt: string): string;
-
- clamp(): void;
-
- fromHEX(hexString: string): Color;
-
- toHEX(fmt: string): string;
-
- toRGBValue(): number;
-
- fromHSV(h: number, s: number, v: number): Color;
-
- toHSV(): any;
-
- static rgb2hsv(r: number, g: number, b: number): any;
-
- static hsv2rgb(h: number, s: number, v: number): any;
- }
-
- export class Rect extends ValueType {
-
- constructor(x?: number, y?: number, w?: number, h?: number);
- x: number;
- y: number;
- width: number;
- height: number;
-
- static fromMinMax(v1: Vec2, v2: Vec2): Rect;
-
- static contain(a: Rect, b: Rect): number;
-
- clone(): Rect;
-
- equals(other: Rect): boolean;
-
- lerp(to: Rect, ratio: number, out?: Rect): Rect;
-
- toString(): string;
-
- xMin: number;
-
- yMin: number;
-
- xMax: number;
-
- yMax: number;
-
- center: Vec2;
-
- origin: Vec2;
-
- size: Size;
-
- intersects(rect: Rect): void;
-
- contains(point: Vec2): void;
-
- containsRect(rect: Rect): void;
- }
-
- export class Size {
-
- constructor(width: number|Size, height?: number);
- width: number;
- height: number;
-
- static ZERO: Size;
-
- clone(): Size;
-
- equals(other: Size): boolean;
-
- lerp(to: Rect, ratio: number, out?: Size): Size;
-
- toString(): string;
- }
-
- export class Acceleration {
-
- constructor(x: number, y: number, z: number, timestamp: number);
- }
-
- export class BlendFunc {
-
- constructor(src1: number, dst1: number);
- }
-
- export enum BlendFactor {
- ONE = 0,
- ZERO = 0,
- SRC_ALPHA = 0,
- SRC_COLOR = 0,
- DST_ALPHA = 0,
- DST_COLOR = 0,
- ONE_MINUS_SRC_ALPHA = 0,
- ONE_MINUS_SRC_COLOR = 0,
- ONE_MINUS_DST_ALPHA = 0,
- ONE_MINUS_DST_COLOR = 0,
- blendFuncDisable = 0,
- }
-
- export enum TextAlignment {
- LEFT = 0,
- CENTER = 0,
- RIGHT = 0,
- }
-
- export class WebGLColor {
-
- constructor(r: number, g: number, b: number, a: number, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT: number;
- }
-
- export class Vertex2F {
-
- constructor(x: number, y: number, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT: number;
- }
-
- export class Vertex3F {
-
- constructor(x: number, y: number, z: number, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT: number;
- }
-
- export class Tex2F {
-
- constructor(u: number, v: number, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT: number;
- }
-
- export class Quad2 {
-
- constructor(tl: Vertex2F, tr: Vertex2F, bl: Vertex2F, br: Vertex2F, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT: number;
- }
-
- export class Quad3 {
-
- constructor(bl1: Vertex3F, br1: Vertex3F, tl1: Vertex3F, tr1: Vertex3F, arrayBuffer: any[], offset: number);
- }
-
- export class V3F_C4B_T2F {
-
- constructor(vertices: Vertex3F, colors: Color, texCoords: Tex2F, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT(): void;
- }
-
- export class V3F_C4B_T2F_Quad {
-
- constructor(tl: V3F_C4B_T2F, bl: V3F_C4B_T2F, tr: V3F_C4B_T2F, br: V3F_C4B_T2F, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT: number;
- }
-
- export class V2F_C4B_T2F {
-
- constructor(vertices: Vertex2F, colors: Color, texCoords: Tex2F, arrayBuffer: any[], offset: number);
- BYTES_PER_ELEMENT: number;
- }
-
- export class V2F_C4B_T2F_Triangle {
-
- constructor(a: V2F_C4B_T2F, b: V2F_C4B_T2F, c: V2F_C4B_T2F, arrayBuffer: any[], offset: number);
- }
-
- export class ValueType {
-
- clone(): ValueType;
-
- equals(other: ValueType): boolean;
-
- lerp(to: ValueType, ratio: number): ValueType;
-
- toString(): string;
- }
-
- export class Vec2 extends ValueType {
-
- constructor(x?: number, y?: number);
- x: number;
- y: number;
-
- clone(): Vec2;
-
- set(newValue: Vec2): Vec2;
-
- equals(other: Vec2): boolean;
-
- toString(): string;
-
- lerp(to: Vec2, ratio: number, out?: Vec2): Vec2;
-
- addSelf(vector: Vec2): Vec2;
-
- add(vector: Vec2, out?: Vec2): Vec2;
-
- subSelf(vector: Vec2): Vec2;
-
- sub(vector: Vec2, out?: Vec2): Vec2;
-
- mulSelf(num: number): Vec2;
-
- mul(num: number, out?: Vec2): Vec2;
-
- scaleSelf(vector: Vec2): Vec2;
-
- scale(vector: Vec2, out?: Vec2): Vec2;
-
- divSelf(divisor: number): Vec2;
-
- div(divisor: number, out?: Vec2): Vec2;
-
- negSelf(): Vec2;
-
- neg(out?: Vec2): Vec2;
-
- dot(vector?: Vec2): number;
-
- cross(vector?: Vec2): number;
-
- mag(): number;
-
- magSqr(): number;
-
- normalizeSelf(): Vec2;
-
- normalize(out?: Vec2): Vec2;
-
- angle(vector: Vec2): number;
-
- signAngle(vector: Vec2): number;
-
- rotate(radians: number, out?: Vec2): Vec2;
-
- rotateSelf(radians: number): Vec2;
-
- static ONE: Vec2;
-
- static ZERO: Vec2;
-
- static UP: Vec2;
-
- static RIGHT: Vec2;
- }
-
- export class DistanceJoint extends Joint {
-
- distance: number;
-
- frequency: number;
-
- 0: number;
- }
-
- export class Joint extends Component {
-
- anchor: Vec2;
-
- connectedAnchor: Vec2;
-
- connectedBody: RigidBody;
-
- collideConnected: boolean;
-
- apply(): void;
-
- getWorldAnchor(): Vec2;
-
- getWorldConnectedAnchor(): Vec2;
-
- getReactionForce(timeStep: number): number;
-
- getReactionTorque(timeStep: number): number;
- }
-
- export class MotorJoint extends Joint {
-
- anchor: Vec2;
-
- connectedAnchor: Vec2;
-
- linearOffset: Vec2;
-
- angularOffset: number;
-
- maxForce: number;
-
- maxTorque: number;
-
- correctionFactor: number;
- }
-
- export class MouseJoint extends Joint {
-
- anchor: Vec2;
-
- connectedAnchor: Vec2;
-
- mouseRegion: Node;
-
- target: Vec2;
-
- frequency: number;
-
- 0: number;
-
- maxForce: number;
- }
-
- export class PrismaticJoint extends Joint {
-
- localAxisA: Vec2;
-
- referenceAngle: number;
-
- enableLimit: boolean;
-
- enableMotor: boolean;
-
- lowerLimit: number;
-
- upperLimit: number;
-
- maxMotorForce: number;
-
- motorSpeed: number;
- }
-
- export class RevoluteJoint extends Joint {
-
- referenceAngle: number;
-
- lowerAngle: number;
-
- upperAngle: number;
-
- maxMotorTorque: number;
-
- motorSpeed: number;
-
- enableLimit: boolean;
-
- enableMotor: boolean;
-
- getJointAngle(): number;
- }
-
- export class RopeJoint extends Joint {
-
- maxLength: number;
- }
-
- export class WeldJoint extends Joint {
-
- referenceAngle: number;
-
- frequency: number;
-
- 0: number;
- }
-
- export class WheelJoint extends Joint {
-
- localAxisA: Vec2;
-
- maxMotorTorque: number;
-
- motorSpeed: number;
-
- enableMotor: boolean;
-
- frequency: number;
-
- dampingRatio: number;
- }
-
- export class PhysicsBoxCollider extends PhysicsCollider implements Collider.Box {
-
- offset: Vec2;
-
- size: Size;
- }
-
- export class PhysicsChainCollider extends PolygonCollider {
-
- loop: boolean;
-
- points: Vec2[];
- }
-
- export class PhysicsCircleCollider extends PhysicsCollider implements Collider.Circle {
-
- offset: Vec2;
-
- radius: number;
- }
-
- export class PhysicsCollider {
-
- density: number;
-
- sensor: boolean;
-
- friction: number;
-
- restitution: number;
-
- body: RigidBody;
-
- apply(): void;
-
- getAABB(): void;
- }
-
- export class PhysicsPolygonCollider extends PhysicsCollider implements Collider.Polygon {
-
- offset: Vec2;
-
- points: Vec2[];
- }
-
-
- export module Node {
-
- export class EventType {
-
- static TOUCH_START: string;
-
- static TOUCH_MOVE: string;
-
- static TOUCH_END: string;
-
- static TOUCH_CANCEL: string;
-
- static MOUSE_DOWN: string;
-
- static MOUSE_MOVE: string;
-
- static MOUSE_ENTER: string;
-
- static MOUSE_LEAVE: string;
-
- static MOUSE_UP: string;
-
- static MOUSE_WHEEL: string;
- }
- }
-
-
-
- export module audioEngine {
-
- export enum AudioState {
- ERROR = 0,
- INITIALZING = 0,
- PLAYING = 0,
- PAUSED = 0,
- }
- }
-
-
-
- export module ParticleSystem {
-
- export enum EmitterMode {
- GRAVITY = 0,
- RADIUS = 0,
- }
- }
-
-
-
- export module ParticleSystem {
-
- export enum PositionType {
- FREE = 0,
- RELATIVE = 0,
- GROUPED = 0,
- }
- }
-
-
-
- export module TiledMap {
-
- export enum Orientation {
- ORTHO = 0,
- HEX = 0,
- ISO = 0,
- NONE = 0,
- MAP = 0,
- LAYER = 0,
- OBJECTGROUP = 0,
- OBJECT = 0,
- TILE = 0,
- HORIZONTAL = 0,
- VERTICAL = 0,
- DIAGONAL = 0,
- FLIPPED_ALL = 0,
- FLIPPED_MASK = 0,
- STAGGERAXIS_X = 0,
- STAGGERAXIS_Y = 0,
- STAGGERINDEX_ODD = 0,
- STAGGERINDEX_EVEN = 0,
- }
- }
-
-
-
- export module Collider {
-
- export class Box {
-
- offset: Vec2;
-
- size: Size;
- }
- }
-
-
-
- export module Collider {
-
- export class Circle {
-
- offset: Vec2;
-
- radius: number;
- }
- }
-
-
-
- export module Collider {
-
- export class Polygon {
-
- offset: Vec2;
-
- points: Vec2[];
- }
- }
-
-
-
- export module Prefab {
-
- export enum OptimizationPolicy {
- AUTO = 0,
- SINGLE_INSTANCE = 0,
- MULTI_INSTANCE = 0,
- }
- }
-
-
-
- export module Button {
-
- export enum Transition {
- NONE = 0,
- COLOR = 0,
- SPRITE = 0,
- SCALE = 0,
- }
- }
-
-
-
- export module Component {
-
- export class EventHandler {
-
- target: Node;
-
- component: string;
-
- handler: string;
-
- customEventData: string;
-
- static emitEvents(events: Component.EventHandler[], ...params: any[]): void;
-
- emit(params: any[]): void;
- }
- }
-
-
-
- export module EditBox {
-
- export enum KeyboardReturnType {
- DEFAULT = 0,
- DONE = 0,
- SEND = 0,
- SEARCH = 0,
- GO = 0,
- }
- }
-
-
-
- export module EditBox {
-
- export enum InputMode {
- ANY = 0,
- EMAIL_ADDR = 0,
- NUMERIC = 0,
- PHONE_NUMBER = 0,
- URL = 0,
- DECIMAL = 0,
- SINGLE_LINE = 0,
- }
- }
-
-
-
- export module EditBox {
-
- export enum InputFlag {
- PASSWORD = 0,
- SENSITIVE = 0,
- INITIAL_CAPS_WORD = 0,
- INITIAL_CAPS_SENTENCE = 0,
- INITIAL_CAPS_ALL_CHARACTERS = 0,
- }
- }
-
-
-
- export module Label {
-
- export enum HorizontalAlign {
- LEFT = 0,
- CENTER = 0,
- RIGHT = 0,
- }
- }
-
-
-
- export module Label {
-
- export enum VerticalAlign {
- TOP = 0,
- CENTER = 0,
- BOTTOM = 0,
- }
- }
-
-
-
- export module Label {
-
- export enum Overflow {
- NONE = 0,
- CLAMP = 0,
- SHRINK = 0,
- RESIZE_HEIGHT = 0,
- }
- }
-
-
-
- export module Label {
-
- export enum Type {
- TTF = 0,
- BMFont = 0,
- SystemFont = 0,
- }
- }
-
-
-
- export module Layout {
-
- export enum Type {
- NONE = 0,
- HORIZONTAL = 0,
- VERTICAL = 0,
- GRID = 0,
- }
- }
-
-
-
- export module Layout {
-
- export enum ResizeMode {
- NONE = 0,
- CONTAINER = 0,
- CHILDREN = 0,
- }
- }
-
-
-
- export module Layout {
-
- export enum AxisDirection {
- HORIZONTAL = 0,
- VERTICAL = 0,
- }
- }
-
-
-
- export module Layout {
-
- export enum VerticalDirection {
- BOTTOM_TO_TOP = 0,
- TOP_TO_BOTTOM = 0,
- }
- }
-
-
-
- export module Layout {
-
- export enum HorizontalDirection {
- LEFT_TO_RIGHT = 0,
- RIGHT_TO_LEFT = 0,
- }
- }
-
-
-
- export module Mask {
-
- export enum Type {
- RECT = 0,
- ELLIPSE = 0,
- IMAGE_STENCIL = 0,
- }
- }
-
-
-
- export module PageView {
-
- export enum SizeMode {
- Unified = 0,
- Free = 0,
- }
- }
-
-
-
- export module PageView {
-
- export enum Direction {
- Horizontal = 0,
- Vertical = 0,
- }
- }
-
-
-
- export module PageView {
-
- export enum EventType {
- PAGE_TURNING = 0,
- }
- }
-
-
-
- export module PageViewIndicator {
-
- export enum Direction {
- HORIZONTAL = 0,
- VERTICAL = 0,
- }
- }
-
-
-
- export module ProgressBar {
-
- export enum Mode {
- HORIZONTAL = 0,
- VERTICAL = 0,
- FILLED = 0,
- }
- }
-
-
-
- export module Scrollbar {
-
- export enum Direction {
- HORIZONTAL = 0,
- VERTICAL = 0,
- }
- }
-
-
-
- export module ScrollView {
-
- export enum EventType {
- SCROLL_TO_TOP = 0,
- SCROLL_TO_BOTTOM = 0,
- SCROLL_TO_LEFT = 0,
- SCROLL_TO_RIGHT = 0,
- SCROLLING = 0,
- BOUNCE_TOP = 0,
- BOUNCE_BOTTOM = 0,
- BOUNCE_LEFT = 0,
- BOUNCE_RIGHT = 0,
- SCROLL_ENDED = 0,
- TOUCH_UP = 0,
- AUTOSCROLL_ENDED_WITH_THRESHOLD = 0,
- SCROLL_BEGAN = 0,
- }
- }
-
-
-
- export module Slider {
-
- export enum Direction {
- Horizontal = 0,
- Vertical = 0,
- }
- }
-
-
-
- export module Sprite {
-
- export enum Type {
- SIMPLE = 0,
- SLICED = 0,
- TILED = 0,
- FILLED = 0,
- }
- }
-
-
-
- export module Sprite {
-
- export enum FillType {
- HORIZONTAL = 0,
- VERTICAL = 0,
- RADIAL = 0,
- }
- }
-
-
-
- export module Sprite {
-
- export enum SizeMode {
- CUSTOM = 0,
- TRIMMED = 0,
- RAW = 0,
- }
- }
-
-
-
- export module VideoPlayer {
-
- export enum EventType {
- PLAYING = 0,
- PAUSED = 0,
- STOPPED = 0,
- COMPLETED = 0,
- META_LOADED = 0,
- CLICKED = 0,
- READY_TO_PLAY = 0,
- }
- }
-
-
-
- export module VideoPlayer {
-
- export enum ResourceType {
- REMOTE = 0,
- LOCAL = 0,
- }
- }
-
-
-
- export module WebView {
-
- export enum EventType {
- LOADED = 0,
- LOADING = 0,
- ERROR = 0,
- }
- }
-
-
-
- export module Widget {
-
- export enum AlignMode {
- ONCE = 0,
- ON_WINDOW_RESIZE = 0,
- ALWAYS = 0,
- }
- }
-
-
-
- export module Event {
-
- export class EventCustom extends Event {
-
- constructor(type: string, bubbles: boolean);
-
- detail: any;
-
- setUserData(data: any): void;
-
- getUserData(): any;
-
- getEventName(): string;
-
- keyCode: number;
- }
- }
-
-
-
- export module SystemEvent {
-
- export class EventType {
-
- static KEY_DOWN: string;
-
- static KEY_UP: string;
-
- static DEVICEMOTION: string;
- }
- }
-
-
-
- export module Event {
-
- export class EventMouse extends Event {
-
- setScrollData(scrollX: number, scrollY: number): void;
-
- getScrollX(): number;
-
- getScrollY(): number;
-
- setLocation(x: number, y: number): void;
-
- getLocation(): Vec2;
-
- getLocationInView(): Vec2;
-
- getPreviousLocation(): Vec2;
-
- getDelta(): Vec2;
-
- getDeltaX(): number;
-
- getDeltaY(): number;
-
- setButton(button: number): void;
-
- getButton(): number;
-
- getLocationX(): number;
-
- getLocationY(): number;
-
- static NONE: number;
-
- static DOWN: number;
-
- static UP: number;
-
- static MOVE: number;
-
- static SCROLL: number;
-
- static BUTTON_LEFT: number;
-
- static BUTTON_RIGHT: number;
-
- static BUTTON_MIDDLE: number;
-
- static BUTTON_4: number;
-
- static BUTTON_5: number;
-
- static BUTTON_6: number;
-
- static BUTTON_7: number;
-
- static BUTTON_8: number;
- }
- }
-
-
-
- export module Event {
-
- export class EventTouch extends Event {
-
- constructor(touchArr: any[], bubbles: boolean);
-
- touch: Touch;
-
- getEventCode(): number;
-
- getTouches(): any[];
-
- setLocation(x: number, y: number): void;
-
- getLocation(): Vec2;
-
- getLocationInView(): Vec2;
-
- getPreviousLocation(): Vec2;
-
- getStartLocation(): Vec2;
-
- getID(): number;
-
- getDelta(): Vec2;
-
- getDeltaX(): number;
-
- getDeltaY(): number;
-
- getLocationX(): number;
-
- getLocationY(): number;
- }
- }
-
-
-
- export module Event {
-
- export class EventAcceleration extends Event {
- }
- }
-
-
-
- export module Event {
-
- export class EventKeyboard extends Event {
- }
- }
-
-
-
- export module Pipeline {
-
- export class Downloader {
-
- constructor(extMap: any);
-
- addHandlers(extMap: any): void;
-
- loadSubpackage(name: string, completeCallback?: (error: Error) => void): void;
- }
- }
-
-
-
- export module Pipeline {
-
- export class Loader {
-
- constructor(extMap: any);
-
- addHandlers(extMap: any): void;
- }
- }
-
-
-
- export module LoadingItems {
-
- export enum ItemState {
- WORKING = 0,
- COMPLETET = 0,
- ERROR = 0,
- }
- }
-
-
-
- export module Graphics {
-
- export enum LineCap {
- BUTT = 0,
- ROUND = 0,
- SQUARE = 0,
- }
- }
-
-
-
- export module Graphics {
-
- export enum LineJoin {
- BEVEL = 0,
- ROUND = 0,
- MITER = 0,
- }
- }
-
-
-
- export module Texture2D {
-
- export enum PixelFormat {
- RGB565 = 0,
- RGB5A1 = 0,
- RGBA4444 = 0,
- RGB888 = 0,
- RGBA8888 = 0,
- A8 = 0,
- I8 = 0,
- AI88 = 0,
- }
- }
-
-
-
- export module Texture2D {
-
- export enum WrapMode {
- REPEAT = 0,
- CLAMP_TO_EDGE = 0,
- MIRRORED_REPEAT = 0,
- }
- }
-
-
-
- export module Texture2D {
-
- export enum Filter {
- LINEAR = 0,
- NEAREST = 0,
- }
- }
-
- }
- declare module anysdk {
-
- export var agentManager: anysdk.AgentManager;
-
- export class AgentManager {
-
- init(appKey: string, appSecret: string, privateKey: string, oauthLoginServer: string): void;
-
- loadAllPlugins(callback: Function, target: any): void;
-
- unloadAllPlugins(): void;
-
- getUserPlugin(): anysdk.ProtocolUser;
-
- getIAPPlugins(): anysdk.ProtocolIAP[];
-
- getIAPPlugin(): anysdk.ProtocolIAP;
-
- getSocialPlugin(): anysdk.ProtocolSocial;
-
- getSharePlugin(): anysdk.ProtocolShare;
-
- getAnalyticsPlugin(): anysdk.ProtocolAnalytics;
-
- getAdsPlugin(): anysdk.ProtocolAds;
-
- getPushPlugin(): anysdk.ProtocolPush;
-
- getRECPlugin(): anysdk.ProtocolREC;
-
- getCrashPlugin(): anysdk.ProtocolCrash;
-
- getAdTrackingPlugin(): anysdk.ProtocolAdTracking;
-
- getCustomPlugin(): anysdk.ProtocolCustom;
-
- getCustomParam(): string;
-
- getChannelId(): string;
-
- isAnaylticsEnabled(): boolean;
-
- setIsAnaylticsEnabled(enabled: boolean): void;
-
- static end(): void;
-
- static getInstance(): anysdk.AgentManager;
- }
-
- export class PluginProtocol {
-
- isFunctionSupported(functionName: string): boolean;
-
- getPluginName(): string;
-
- getPluginVersion(): string;
-
- getSDKVersion(): string;
-
- callFuncWithParam(funName: string, ...args: any|anysdk.PluginParam[]): void;
-
- callStringFuncWithParam(funName: string, ...args: any|anysdk.PluginParam[]): string;
-
- callIntFuncWithParam(funName: string, ...args: any|anysdk.PluginParam[]): number;
-
- callBoolFuncWithParam(funName: string, ...args: any|anysdk.PluginParam[]): boolean;
-
- callFloatFuncWithParam(funName: string, ...args: any|anysdk.PluginParam[]): number;
- }
-
- export class ProtocolUser extends PluginProtocol {
-
- login(...args: string|any[]): void;
-
- isLogined(): boolean;
-
- getUserID(): string;
-
- getPluginId(): string;
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
-
- logout(): void;
-
- showToolBar(place: anysdk.ToolBarPlace): void;
-
- hideToolBar(): void;
-
- enterPlatform(): void;
-
- exit(): void;
-
- pause(): void;
-
- realNameRegister(): void;
-
- antiAddictionQuery(): void;
-
- submitLoginGameRole(data: any): void;
-
- getUserInfo(info: any): void;
-
- getAvailableLoginType(info: any): void;
-
- setLoginType(loginType: string): void;
-
- sendToDesktop(): void;
-
- openBBS(): void;
- }
-
- export class ProtocolIAP extends PluginProtocol {
-
- payForProduct(info: any): void;
-
- getOrderId(): string;
-
- static resetPayState(): void;
-
- getPluginId(): string;
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
- }
-
- export class ProtocolAnalytics extends PluginProtocol {
-
- startSession(): void;
-
- stopSession(): void;
-
- setSessionContinueMillis(millis: number): void;
-
- logError(errorId: string, message: string): void;
-
- logEvent(errorId: string, ...args: any[]): void;
-
- logTimedEventBegin(eventId: string): void;
-
- logTimedEventEnd(eventId: string): void;
-
- setCaptureUncaughtException(enabled: boolean): void;
-
- setAccount(paramMap: any): void;
-
- onChargeRequest(paramMap: any): void;
-
- onChargeSuccess(orderID: string): void;
-
- onChargeFail(paramMap: any): void;
-
- onChargeOnlySuccess(paramMap: any): void;
-
- onPurchase(paramMap: any): void;
-
- onUse(paramMap: any): void;
-
- onReward(paramMap: any): void;
-
- startLevel(paramMap: any): void;
-
- finishLevel(levelID: string): void;
-
- failLevel(paramMap: any): void;
-
- startTask(paramMap: any): void;
-
- finishTask(taskID: string): void;
-
- failTask(paramMap: any): void;
- }
-
- export class ProtocolShare extends PluginProtocol {
-
- share(info: any): void;
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
- }
-
- export class ProtocolAds extends PluginProtocol {
-
- hideAds(adstype: anysdk.AdsType, idx: number): void;
-
- preloadAds(adstype: anysdk.AdsType, idx: number): void;
-
- queryPoints(): number;
-
- isAdTypeSupported(arg0: anysdk.AdsType): boolean;
-
- spendPoints(points: number): void;
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
- }
-
- export class ProtocolSocial extends PluginProtocol {
-
- signIn(): void;
-
- signOut(): void;
-
- submitScore(leadboardID: string, score: number): void;
-
- showLeaderboard(leaderboardID: string): void;
-
- showAchievements(): void;
-
- share(info: any): void;
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
-
- pauseRecording(): void;
-
- interact(): void;
-
- subscribe(): void;
- }
-
- export class ProtocolPush extends PluginProtocol {
-
- startPush(): void;
-
- closePush(): void;
-
- delAlias(alias: string): void;
-
- setAlias(alias: string): void;
-
- delTags(tags: any): void;
-
- setTags(tags: any): void;
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
- }
-
- export class ProtocolCrash extends PluginProtocol {
-
- setUserIdentifier(identifier: string): void;
-
- reportException(message: string, exception: string): void;
-
- leaveBreadcrumb(breadcrumb: string): void;
- }
-
- export class ProtocolREC extends PluginProtocol {
-
- share(info: any): void;
-
- startRecording(): void;
-
- stopRecording(): void;
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
-
- pauseRecording(): void;
-
- resumeRecording(): void;
-
- isAvailable(): boolean;
-
- isRecording(): boolean;
-
- showToolBar(): void;
-
- hideToolBar(): void;
-
- showVideoCenter(): void;
-
- enterPlatform(): void;
-
- setMetaData(info: any): void;
- }
-
- export class ProtocolAdTracking extends PluginProtocol {
-
- onPay(productInfo: any): void;
-
- onLogin(userInfo: any): void;
-
- onRegister(userId: string): void;
-
- trackEvent(eventId: string, paramMap: any): void;
-
- onCreateRole(userInfo: any): void;
-
- onLevelUp(info: any): void;
-
- onStartToPay(info: any): void;
- }
-
- export class ProtocolCustom extends PluginProtocol {
-
- setListener(listener: Function, target: any): void;
-
- getListener(): Function;
- }
-
- export class PluginParam {
-
- static create(parameters: number|string|any): anysdk.PluginParam;
- }
-
- export enum UserActionResultCode {
- kInitSuccess = 0,
- kInitFail = 0,
- kLoginSuccess = 0,
- kLoginNetworkError = 0,
- kLoginNoNeed = 0,
- kLoginFail = 0,
- kLoginCancel = 0,
- kLogoutSuccess = 0,
- kLogoutFail = 0,
- kPlatformEnter = 0,
- kPlatformBack = 0,
- kPausePage = 0,
- kExitPage = 0,
- kAntiAddictionQuery = 0,
- kRealNameRegister = 0,
- kAccountSwitchSuccess = 0,
- kAccountSwitchFail = 0,
- kOpenShop = 0,
- kAccountSwitchCancel = 0,
- kUserExtension = 0,
- kSendToDesktopSuccess = 0,
- kSendToDesktopFail = 0,
- kGetAvailableLoginTypeSuccess = 0,
- kGetAvailableLoginTypeFail = 0,
- kGetUserInfoSuccess = 0,
- kGetUserInfoFail = 0,
- kOpenBBSSuccess = 0,
- kOpenBBSFail = 0,
- }
-
- export enum ToolBarPlace {
- kToolBarTopLeft = 0,
- kToolBarTopRight = 0,
- kToolBarMidLeft = 0,
- kToolBarMidRight = 0,
- kToolBarBottomLeft = 0,
- kToolBarBottomRight = 0,
- }
-
- export enum PayResultCode {
- kPaySuccess = 0,
- kPayFail = 0,
- kPayCancel = 0,
- kPayNetworkError = 0,
- kPayProductionInforIncomplete = 0,
- kPayInitSuccess = 0,
- kPayInitFail = 0,
- kPayNowPaying = 0,
- kPayReStringgeSuccess = 0,
- kPayExtension = 0,
- kPayNeedLoginAgain = 0,
- kRequestSuccess = 0,
- kRequestFail = 0,
- }
-
- export enum AccountType {
- ANONYMOUS = 0,
- REGISTED = 0,
- SINA_WEIBO = 0,
- TENCENT_WEIBO = 0,
- QQ = 0,
- ND91 = 0,
- }
-
- export enum AccountOperate {
- LOGIN = 0,
- LOGOUT = 0,
- REGISTER = 0,
- }
-
- export enum AccountGender {
- MALE = 0,
- FEMALE = 0,
- UNKNOWN = 0,
- }
-
- export enum TaskType {
- GUIDE_LINE = 0,
- MAIN_LINE = 0,
- BRANCH_LINE = 0,
- DAILY = 0,
- ACTIVITY = 0,
- OTHER = 0,
- }
-
- export enum ShareResultCode {
- kShareSuccess = 0,
- kShareFail = 0,
- kShareCancel = 0,
- kShareNetworkError = 0,
- kShareExtension = 0,
- }
-
- export enum SocialRetCode {
- kScoreSubmitSucceed = 0,
- kScoreSubmitfail = 0,
- kAchUnlockSucceed = 0,
- kAchUnlockFail = 0,
- kSocialSignInSucceed = 0,
- kSocialSignInFail = 0,
- kSocialSignOutSucceed = 0,
- kSocialSignOutFail = 0,
- kSocialGetGameFriends = 0,
- kSocialExtensionCode = 0,
- kSocialGetFriendsInfoSuccess = 0,
- kSocialGetFriendsInfoFail = 0,
- kSocialAlreadySubscription = 0,
- kSocialNoSubscription = 0,
- kSocialSubscriptionFail = 0,
- }
-
- export enum AdsResultCode {
- kAdsReceived = 0,
- kAdsShown = 0,
- kAdsDismissed = 0,
- kPointsSpendSucceed = 0,
- kPointsSpendFailed = 0,
- kNetworkError = 0,
- kUnknownError = 0,
- kOfferWallOnPointsChanged = 0,
- kRewardedVideoWithReward = 0,
- kInAppPurchaseFinished = 0,
- kAdsClicked = 0,
- kAdsExtension = 0,
- }
-
- export enum AdsPos {
- kPosCenter = 0,
- kPosTop = 0,
- kPosTopLeft = 0,
- kPosTopRight = 0,
- kPosBottom = 0,
- kPosBottomLeft = 0,
- kPosBottomRight = 0,
- }
-
- export enum AdsType {
- AD_TYPE_BANNER = 0,
- AD_TYPE_FULLSCREEN = 0,
- AD_TYPE_MOREAPP = 0,
- AD_TYPE_OFFERWALL = 0,
- AD_TYPE_REWARDEDVIDEO = 0,
- AD_TYPE_NATIVEEXPRESS = 0,
- AD_TYPE_NATIVEADVANCED = 0,
- }
-
- export enum PushActionResultCode {
- kPushReceiveMessage = 0,
- kPushExtensionCode = 0,
- }
-
- export enum CustomResultCode {
- kCustomExtension = 0,
- }
-
- export enum RECResultCode {
- kRECInitSuccess = 0,
- kRECInitFail = 0,
- kRECStartRecording = 0,
- kRECStopRecording = 0,
- kRECPauseRecording = 0,
- kRECResumeRecording = 0,
- kRECEnterSDKPage = 0,
- kRECQuitSDKPage = 0,
- kRECShareSuccess = 0,
- kRECShareFail = 0,
- kRECExtension = 0,
- }
- }
- declare module dragonBones {
-
- export class ArmatureDisplay extends cc._RendererUnderSG {
-
- dragonAsset: DragonBonesAsset;
-
- dragonAtlasAsset: DragonBonesAtlasAsset;
-
- armatureName: string;
-
- animationName: string;
- _defaultArmatureIndex: number;
-
- timeScale: number;
-
- playTimes: number;
-
- debugBones: boolean;
-
- playAnimation(animName: string, playTimes: number): dragonBones.AnimationState;
-
- getArmatureNames(): any[];
-
- getAnimationNames(armatureName: string): any[];
-
- addEventListener(type: string, listener: (event: cc.Event) => void, target?: any): void;
-
- removeEventListener(type: string, listener?: Function, target?: any): void;
-
- buildArmature(armatureName: string): dragonBones.Armature;
-
- armature(): any;
- }
-
- export class DragonBonesAsset extends cc.Asset {
-
- dragonBonesJson: string;
- }
-
- export class DragonBonesAtlasAsset extends cc.Asset {
- atlasJson: string;
- texture: cc.Texture2D;
- }
- }
- declare module sp {
-
- export class Skeleton extends cc._RendererUnderSG {
-
- paused: boolean;
-
- skeletonData: SkeletonData;
-
- defaultSkin: string;
-
- defaultAnimation: string;
-
- animation: string;
- _defaultSkinIndex: number;
-
- loop: boolean;
-
- premultipliedAlpha: boolean;
-
- timeScale: number;
-
- debugSlots: boolean;
-
- debugBones: boolean;
-
- updateWorldTransform(): void;
-
- setToSetupPose(): void;
-
- setBonesToSetupPose(): void;
-
- setSlotsToSetupPose(): void;
-
- findBone(boneName: string): sp.spine.Bone;
-
- findSlot(slotName: string): sp.spine.Slot;
-
- setSkin(skinName: string): sp.spine.Skin;
-
- getAttachment(slotName: string, attachmentName: string): sp.spine.Attachment;
-
- setAttachment(slotName: string, attachmentName: string): void;
-
- setSkeletonData(skeletonData: sp.spine.SkeletonData, ownsSkeletonData: sp.spine.SkeletonData): void;
-
- setAnimationStateData(stateData: sp.spine.AnimationStateData): void;
-
- setMix(fromAnimation: string, toAnimation: string, duration: number): void;
-
- setAnimationListener(target: any, callback: Function): void;
-
- setAnimation(trackIndex: number, name: string, loop: boolean): sp.spine.TrackEntry;
-
- addAnimation(trackIndex: number, name: string, loop: boolean, delay?: number): sp.spine.TrackEntry;
-
- findAnimation(name: string): sp.spine.Animation;
-
- getCurrent(trackIndex: void): sp.spine.TrackEntry;
-
- clearTracks(): void;
-
- clearTrack(trackIndex: number): void;
-
- setStartListener(listener: Function): void;
-
- setInterruptListener(listener: Function): void;
-
- setEndListener(listener: Function): void;
-
- setDisposeListener(listener: Function): void;
-
- setCompleteListener(listener: Function): void;
-
- setEventListener(listener: Function): void;
-
- setTrackStartListener(entry: sp.spine.TrackEntry, listener: Function): void;
-
- setTrackInterruptListener(entry: sp.spine.TrackEntry, listener: Function): void;
-
- setTrackEndListener(entry: sp.spine.TrackEntry, listener: Function): void;
-
- setTrackDisposeListener(entry: sp.spine.TrackEntry, listener: Function): void;
-
- setTrackCompleteListener(entry: sp.spine.TrackEntry, listener: Function): void;
-
- setTrackEventListener(entry: sp.spine.TrackEntry, listener: Function): void;
- }
-
- export class SkeletonData extends cc.Asset {
-
- skeletonJson: any;
- atlasText: string;
- textures: cc.Texture2D[];
-
- scale: number;
-
- getRuntimeData(quiet?: boolean): sp.spine.SkeletonData;
- }
-
- export enum AnimationEventType {
- START = 0,
- END = 0,
- COMPLETE = 0,
- EVENT = 0,
- }
- }
- declare module sp.spine {
- }
- declare module cc._decorator {
-
- export function ccclass(name?: string): Function;
- export function ccclass(_class?: Function): void;
-
- export function property(options?: {type?: any; visible?: boolean|(() => boolean); displayName?: string; tooltip?: string; multiline?: boolean; readonly?: boolean; min?: number; max?: number; step?: number; range?: number[]; slide?: boolean; serializable?: boolean; formerlySerializedAs?: string; editorOnly?: boolean; override?: boolean; animatable?: boolean} | any[]|Function|cc.ValueType|number|string|boolean): Function;
- export function property(_target: Object, _key: any, _desc?: any): void;
-
- export function executeInEditMode(): Function;
- export function executeInEditMode(_class: Function): void;
-
- export function requireComponent(requiredComponent: typeof cc.Component): Function;
-
- export function menu(path: string): Function;
-
- export function executionOrder(order: number): Function;
-
- export function disallowMultiple(): Function;
- export function disallowMultiple(_class: Function): void;
-
- export function playOnFocus(): Function;
- export function playOnFocus(_class: Function): void;
-
- export function inspector(path: string): Function;
-
- export function help(path: string): Function;
-
- export function mixins(ctor: Function, ...rest: Function[]): Function;
- }
- declare module cc.js {
-
- export function isNumber(obj: any): boolean;
-
- export function isString(obj: any): boolean;
-
- export function addon(obj: any, ...sourceObj: any[]): any;
-
- export function mixin(obj: any, ...sourceObj: any[]): any;
-
- export function extend(cls: Function, base: Function): Function;
-
- export function getSuper(ctor: Function): Function;
-
- export function clear(obj: any): void;
-
- export function getPropertyDescriptor(obj: any, name: string): any;
-
- export function value(obj: any, prop: string, value: any, writable?: boolean, enumerable?: boolean): void;
-
- export function getset(obj: any, prop: string, getter: Function, setter: Function, enumerable?: boolean): void;
-
- export function get(obj: any, prop: string, getter: Function, enumerable?: boolean, configurable?: boolean): void;
-
- export function set(obj: any, prop: string, setter: Function, enumerable?: boolean, configurable?: boolean): void;
-
- export function getClassName(objOrCtor: any|Function): string;
-
- export function setClassName(className: string, constructor: Function): void;
-
- export function unregisterClass(...constructor: Function[]): void;
-
- export function getClassByName(classname: string): Function;
-
- export function obsolete(obj: any, obsoleted: string, newExpr: string, writable?: boolean): void;
-
- export function obsoletes(obj: any, objName: any, props: any, writable?: boolean): void;
-
- export function formatStr(msg: string|any, ...subst: any[]): string;
-
- export function createMap(forceDictMode?: boolean): any;
-
- export class array {
-
- static removeAt(array: any[], index: number): void;
-
- static fastRemoveAt(array: any[], index: number): void;
-
- static remove(array: any[], value: any): boolean;
-
- static fastRemove(array: any[], value: number): void;
-
- static verifyType(array: any[], type: Function): boolean;
-
- static removeArray(array: any[], minusArr: any[]): void;
-
- static appendObjectsAt(array: any[], addObjs: any[], index: number): any[];
-
- static indexOf(searchElement: any, fromIndex?: number): number;
-
- static contains(array: any[], value: any): boolean;
-
- static copy(array: any[]): any[];
- }
-
- export class Pool {
-
- constructor(cleanupFunc: (obj: any) => void, size: number);
- constructor(size: number);
-
- get(...params: any[]): any;
-
- count: number;
-
- _get(): any;
-
- put(): void;
-
- resize(): void;
- }
- }
- declare namespace dragonBones {
-
- const enum ArmatureType {
- Armature = 0,
- MovieClip = 1,
- Stage = 2,
- }
-
- const enum DisplayType {
- Image = 0,
- Armature = 1,
- Mesh = 2,
- }
-
- const enum ExtensionType {
- FFD = 0,
- AdjustColor = 10,
- BevelFilter = 11,
- BlurFilter = 12,
- DropShadowFilter = 13,
- GlowFilter = 14,
- GradientBevelFilter = 15,
- GradientGlowFilter = 16,
- }
-
- const enum EventType {
- Frame = 10,
- Sound = 11,
- }
-
- const enum ActionType {
- Play = 0,
- Stop = 1,
- GotoAndPlay = 2,
- GotoAndStop = 3,
- FadeIn = 4,
- FadeOut = 5,
- }
-
- const enum BlendMode {
- Normal = 0,
- Add = 1,
- Alpha = 2,
- Darken = 3,
- Difference = 4,
- Erase = 5,
- HardLight = 6,
- Invert = 7,
- Layer = 8,
- Lighten = 9,
- Multiply = 10,
- Overlay = 11,
- Screen = 12,
- Subtract = 13,
- }
-
- interface Map<T> {
- [key: string]: T;
- }
-
- class DragonBones {
-
- static PI_D: number;
-
- static PI_H: number;
-
- static PI_Q: number;
-
- static ANGLE_TO_RADIAN: number;
-
- static RADIAN_TO_ANGLE: number;
-
- static SECOND_TO_MILLISECOND: number;
- static VERSION: string;
-
- static debug: boolean;
-
- static debugDraw: boolean;
- }
- }
- declare namespace dragonBones {
-
- abstract class BaseObject {
- private static _hashCode;
- private static _defaultMaxCount;
- private static _maxCountMap;
- private static _poolsMap;
- private static _returnObject(object);
-
- static setMaxCount(objectConstructor: typeof BaseObject, maxCount: number): void;
-
- static clearPool(objectConstructor?: typeof BaseObject): void;
-
- static borrowObject<T extends BaseObject>(objectConstructor: {
- new (): T;
- }): T;
-
- hashCode: number;
-
- protected abstract _onClear(): void;
-
- returnToPool(): void;
- }
- }
- declare namespace dragonBones {
- }
- declare namespace dragonBones {
-
- const enum AnimationFadeOutMode {
-
- None = 0,
-
- SameLayer = 1,
-
- SameGroup = 2,
-
- SameLayerAndGroup = 3,
-
- All = 4,
- }
-
- interface IAnimateble {
-
- advanceTime(passedTime: number): void;
- }
-
- class Animation extends BaseObject {
-
- private static _sortAnimationState(a, b);
-
- static toString(): string;
-
- timeScale: number;
-
- _armature: Armature;
- private _isPlaying;
- private _time;
- private _duration;
- private _lastAnimationState;
- private _animations;
- private _animationNames;
- private _animationStates;
-
- protected _onClear(): void;
- private _fadeOut(fadeOutTime, layer, group, fadeOutMode, pauseFadeOut);
-
- reset(): void;
-
- stop(animationName?: string): void;
-
- play(animationName?: string, playTimes?: number): AnimationState;
-
- fadeIn(animationName: string, fadeInTime?: number, playTimes?: number, layer?: number, group?: string, fadeOutMode?: AnimationFadeOutMode, additiveBlending?: boolean, displayControl?: boolean, pauseFadeOut?: boolean, pauseFadeIn?: boolean): AnimationState;
-
- gotoAndPlayByTime(animationName: string, time?: number, playTimes?: number, toTime?: number): AnimationState;
-
- gotoAndPlayByFrame(animationName: string, frame?: number, playTimes?: number, toFrame?: number): AnimationState;
-
- gotoAndPlayByProgress(animationName: string, progress?: number, playTimes?: number, toProgress?: number): AnimationState;
-
- gotoAndStopByTime(animationName: string, time?: number): AnimationState;
-
- gotoAndStopByFrame(animationName: string, frame?: number): AnimationState;
-
- gotoAndStopByProgress(animationName: string, progress?: number): AnimationState;
-
- getState(animationName: string): AnimationState;
-
- hasAnimation(animationName: string): boolean;
-
- isPlaying: boolean;
-
- isCompleted: boolean;
-
- lastAnimationName: string;
-
- lastAnimationState: AnimationState;
-
- animationNames: Array<string>;
-
- animations: Map<AnimationData>;
-
- gotoAndPlay(animationName: string, fadeInTime?: number, duration?: number, playTimes?: number, layer?: number, group?: string, fadeOutMode?: AnimationFadeOutMode, pauseFadeOut?: boolean, pauseFadeIn?: boolean): AnimationState;
-
- gotoAndStop(animationName: string, time?: number): AnimationState;
-
- animationList: Array<string>;
-
- animationDataList: Array<AnimationData>;
- }
- }
- declare namespace dragonBones {
-
- class AnimationState extends BaseObject {
-
- static stateActionEnabled: boolean;
-
- static toString(): string;
-
- displayControl: boolean;
-
- additiveBlending: boolean;
-
- actionEnabled: boolean;
-
- playTimes: number;
-
- timeScale: number;
-
- weight: number;
-
- autoFadeOutTime: number;
-
- fadeTotalTime: number;
-
- private _isPlaying;
-
- private _isPausePlayhead;
-
- private _fadeTime;
-
- private _time;
-
- private _name;
-
- private _armature;
-
- private _animationData;
-
- private _zOrderTimeline;
-
- private _boneMask;
-
- private _boneTimelines;
-
- private _slotTimelines;
-
- private _ffdTimelines;
-
- protected _onClear(): void;
- private _updateTimelineStates();
- private _advanceFadeTime(passedTime);
-
- play(): void;
-
- stop(): void;
-
- fadeOut(fadeOutTime: number, pausePlayhead?: boolean): void;
-
- containsBoneMask(name: string): boolean;
-
- addBoneMask(name: string, recursive?: boolean): void;
-
- removeBoneMask(name: string, recursive?: boolean): void;
-
- removeAllBoneMask(): void;
-
- layer: number;
-
- group: string;
-
- name: string;
-
- animationData: AnimationData;
-
- isCompleted: boolean;
-
- isPlaying: boolean;
-
- currentPlayTimes: number;
-
- totalTime: number;
-
- currentTime: number;
-
- autoTween: boolean;
-
- clip: AnimationData;
- }
- }
- declare namespace dragonBones {
- }
- declare namespace dragonBones {
-
- class WorldClock implements IAnimateble {
- private static _clock;
-
- static clock: WorldClock;
-
- time: number;
-
- timeScale: number;
- private _animatebles;
-
- constructor();
-
- advanceTime(passedTime: number): void;
-
- contains(value: IAnimateble): boolean;
-
- add(value: IAnimateble): void;
-
- remove(value: IAnimateble): void;
-
- clear(): void;
- }
- }
- declare namespace dragonBones {
-
- abstract class TransformObject extends BaseObject {
-
- userData: any;
-
- name: string;
-
- globalTransformMatrix: Matrix;
-
- global: Transform;
-
- origin: Transform;
-
- offset: Transform;
-
- _armature: Armature;
-
- _parent: Bone;
-
- protected _globalTransformMatrix: Matrix;
-
- protected _onClear(): void;
-
- armature: Armature;
-
- parent: Bone;
- }
- }
- declare namespace dragonBones {
-
- class Armature extends BaseObject implements IAnimateble {
-
- static toString(): string;
- private static _onSortSlots(a, b);
-
- userData: any;
-
- _cacheFrameIndex: number;
-
- _armatureData: ArmatureData;
-
- _skinData: SkinData;
-
- _animation: Animation;
-
- _display: IArmatureDisplay;
-
- _eventManager: IEventDispatcher;
- private _delayDispose;
- private _lockDispose;
- private _slotsDirty;
- private _replacedTexture;
- private _bones;
- private _slots;
- private _actions;
- private _events;
-
- protected _onClear(): void;
- private _sortBones();
- private _sortSlots();
- private _doAction(value);
-
- _sortZOrder(slotIndices: Array<number>): void;
-
- _bufferAction(value: ActionData): void;
-
- dispose(): void;
-
- advanceTime(passedTime: number): void;
-
- invalidUpdate(boneName?: string, updateSlotDisplay?: boolean): void;
-
- getBone(name: string): Bone;
-
- getBoneByDisplay(display: any): Bone;
-
- getSlot(name: string): Slot;
-
- getSlotByDisplay(display: any): Slot;
-
- replaceTexture(texture: any): void;
-
- getBones(): Array<Bone>;
-
- getSlots(): Array<Slot>;
-
- name: string;
-
- armatureData: ArmatureData;
-
- animation: Animation;
-
- display: IArmatureDisplay | any;
-
- parent: Slot;
-
- cacheFrameRate: number;
-
- replacedTexture: any;
-
- enableAnimationCache(frameRate: number): void;
-
- hasEventListener(type: EventStringType): void;
-
- addEventListener(type: EventStringType, listener: Function, target: any): void;
-
- removeEventListener(type: EventStringType, listener: Function, target: any): void;
-
- addBone(value: Bone, parentName?: string): void;
-
- addSlot(value: Slot, parentName: string): void;
-
- removeBone(value: Bone): void;
-
- removeSlot(value: Slot): void;
-
- getDisplay(): any;
-
- enableCache: boolean;
- }
- }
- declare namespace dragonBones {
-
- class Bone extends TransformObject {
-
- static toString(): string;
-
- inheritTranslation: boolean;
-
- inheritRotation: boolean;
-
- inheritScale: boolean;
-
- ikBendPositive: boolean;
-
- ikWeight: number;
-
- length: number;
-
- private _visible;
-
- private _ikChain;
-
- private _ikChainIndex;
-
- private _ik;
-
- private _bones;
-
- private _slots;
-
- protected _onClear(): void;
-
- private _updateGlobalTransformMatrix();
-
- private _computeIKA();
-
- private _computeIKB();
-
- _setArmature(value: Armature): void;
-
- invalidUpdate(): void;
-
- contains(child: TransformObject): boolean;
-
- getBones(): Array<Bone>;
-
- getSlots(): Array<Slot>;
-
- ikChain: number;
-
- ikChainIndex: number;
-
- ik: Bone;
-
- visible: boolean;
-
- slot: Slot;
- }
- }
- declare namespace dragonBones {
-
- interface IArmatureDisplay extends IEventDispatcher {
-
- dispose(): void;
-
- armature: Armature;
-
- animation: Animation;
-
- advanceTimeBySelf(on: boolean): void;
- }
- }
- declare namespace dragonBones {
-
- abstract class Slot extends TransformObject {
- private static _helpPoint;
- private static _helpMatrix;
-
- inheritAnimation: boolean;
-
- displayController: string;
-
- _zOrder: number;
-
- _pivotX: number;
-
- _pivotY: number;
-
- _displayDataSet: SlotDisplayDataSet;
-
- _meshData: MeshData;
-
- _childArmature: Armature;
-
- _rawDisplay: any;
-
- _meshDisplay: any;
-
- _cacheFrames: Array<Matrix>;
-
- _colorTransform: ColorTransform;
-
- _ffdVertices: Array<number>;
-
- _replacedDisplayDataSet: Array<DisplayData>;
-
- protected _displayDirty: boolean;
-
- protected _blendModeDirty: boolean;
-
- protected _originDirty: boolean;
-
- protected _transformDirty: boolean;
-
- protected _displayIndex: number;
-
- protected _blendMode: BlendMode;
-
- protected _display: any;
-
- protected _localMatrix: Matrix;
-
- protected _displayList: Array<any | Armature>;
-
- protected _meshBones: Array<Bone>;
-
- protected _onClear(): void;
-
- protected abstract _initDisplay(value: any): void;
-
- protected abstract _disposeDisplay(value: any): void;
-
- protected abstract _onUpdateDisplay(): void;
-
- protected abstract _addDisplay(): void;
-
- protected abstract _replaceDisplay(value: any): void;
-
- protected abstract _removeDisplay(): void;
-
- protected abstract _updateZOrder(): void;
-
- protected abstract _updateBlendMode(): void;
-
- protected abstract _updateColor(): void;
-
- protected abstract _updateFilters(): void;
-
- protected abstract _updateFrame(): void;
-
- protected abstract _updateMesh(): void;
-
- protected abstract _updateTransform(): void;
- private _isMeshBonesUpdate();
-
- protected _updatePivot(rawDisplayData: DisplayData, currentDisplayData: DisplayData, currentTextureData: TextureData): void;
-
- protected _updateDisplay(): void;
-
- protected _updateLocalTransformMatrix(): void;
-
- protected _updateGlobalTransformMatrix(): void;
-
- _setDisplayList(value: Array<any>): boolean;
-
- invalidUpdate(): void;
-
- rawDisplay: any;
-
- MeshDisplay: any;
-
- displayIndex: number;
-
- displayList: Array<any>;
-
- display: any;
-
- childArmature: Armature;
-
- getDisplay(): any;
-
- setDisplay(value: any): void;
- }
- }
- declare namespace dragonBones {
-
- type EventStringType = string | "start" | "loopComplete" | "complete" | "fadeIn" | "fadeInComplete" | "fadeOut" | "fadeOutComplete" | "frameEvent" | "soundEvent";
-
- interface IEventDispatcher {
-
- hasEvent(type: EventStringType): boolean;
-
- addEvent(type: EventStringType, listener: Function, target: any): void;
-
- removeEvent(type: EventStringType, listener: Function, target: any): void;
- }
-
- class EventObject extends BaseObject {
-
- static START: string;
-
- static LOOP_COMPLETE: string;
-
- static COMPLETE: string;
-
- static FADE_IN: string;
-
- static FADE_IN_COMPLETE: string;
-
- static FADE_OUT: string;
-
- static FADE_OUT_COMPLETE: string;
-
- static FRAME_EVENT: string;
-
- static SOUND_EVENT: string;
-
- static toString(): string;
-
- type: EventStringType;
-
- name: string;
-
- data: any;
-
- armature: Armature;
-
- bone: Bone;
-
- slot: Slot;
-
- animationState: AnimationState;
-
- frame: AnimationFrameData;
-
- userData: any;
-
- protected _onClear(): void;
- }
- }
- declare namespace dragonBones {
-
- class ColorTransform {
- alphaMultiplier: number;
- redMultiplier: number;
- greenMultiplier: number;
- blueMultiplier: number;
- alphaOffset: number;
- redOffset: number;
- greenOffset: number;
- blueOffset: number;
- constructor(alphaMultiplier?: number, redMultiplier?: number, greenMultiplier?: number, blueMultiplier?: number, alphaOffset?: number, redOffset?: number, greenOffset?: number, blueOffset?: number);
- copyFrom(value: ColorTransform): void;
- identity(): void;
- }
- }
- declare namespace dragonBones {
-
- class Matrix {
- a: number;
- b: number;
- c: number;
- d: number;
- tx: number;
- ty: number;
- constructor(a?: number, b?: number, c?: number, d?: number, tx?: number, ty?: number);
-
- toString(): string;
-
- copyFrom(value: Matrix): void;
-
- identity(): void;
-
- concat(value: Matrix): void;
-
- invert(): void;
-
- transformPoint(x: number, y: number, result: {
- x: number;
- y: number;
- }, delta?: boolean): void;
- }
- }
- declare namespace dragonBones {
-
- class Point {
- x: number;
- y: number;
- constructor(x?: number, y?: number);
- copyFrom(value: Point): void;
- clear(): void;
- }
- }
- declare namespace dragonBones {
-
- class Rectangle {
- x: number;
- y: number;
- width: number;
- height: number;
- constructor(x?: number, y?: number, width?: number, height?: number);
- copyFrom(value: Rectangle): void;
- clear(): void;
- }
- }
- declare namespace dragonBones {
-
- class Transform {
-
- x: number;
-
- y: number;
-
- skewX: number;
-
- skewY: number;
-
- scaleX: number;
-
- scaleY: number;
-
- static normalizeRadian(value: number): number;
-
- constructor(
-
- x?: number,
-
- y?: number,
-
- skewX?: number,
-
- skewY?: number,
-
- scaleX?: number,
-
- scaleY?: number);
-
- toString(): string;
-
- copyFrom(value: Transform): Transform;
-
- identity(): Transform;
-
- add(value: Transform): Transform;
-
- minus(value: Transform): Transform;
-
- fromMatrix(matrix: Matrix): Transform;
-
- toMatrix(matrix: Matrix): Transform;
-
- rotation: number;
- }
- }
- declare namespace dragonBones {
-
- abstract class TimelineData<T extends FrameData<T>> extends BaseObject {
-
- static toString(): string;
- scale: number;
-
- offset: number;
-
- frames: Array<T>;
- constructor();
-
- protected _onClear(): void;
- }
-
- class ZOrderTimelineData extends TimelineData<ZOrderFrameData> {
- static toString(): string;
- }
-
- class BoneTimelineData extends TimelineData<BoneFrameData> {
- static cacheFrame(cacheFrames: Array<Matrix>, cacheFrameIndex: number, globalTransformMatrix: Matrix): Matrix;
- static toString(): string;
- bone: BoneData;
- originalTransform: Transform;
- cachedFrames: Array<Matrix>;
- constructor();
-
- protected _onClear(): void;
- cacheFrames(cacheFrameCount: number): void;
- }
-
- class SlotTimelineData extends TimelineData<SlotFrameData> {
- static cacheFrame(cacheFrames: Array<Matrix>, cacheFrameIndex: number, globalTransformMatrix: Matrix): Matrix;
- static toString(): string;
- slot: SlotData;
- cachedFrames: Array<Matrix>;
- constructor();
-
- protected _onClear(): void;
- cacheFrames(cacheFrameCount: number): void;
- }
-
- class FFDTimelineData extends TimelineData<ExtensionFrameData> {
- static toString(): string;
- displayIndex: number;
- skin: SkinData;
- slot: SlotDisplayDataSet;
- constructor();
-
- protected _onClear(): void;
- }
- }
- declare namespace dragonBones {
-
- class AnimationData extends TimelineData<AnimationFrameData> {
-
- static toString(): string;
-
- hasAsynchronyTimeline: boolean;
-
- frameCount: number;
-
- playTimes: number;
-
- position: number;
-
- duration: number;
-
- fadeInTime: number;
-
- cacheTimeToFrameScale: number;
-
- name: string;
-
- animation: AnimationData;
-
- zOrderTimeline: TimelineData<ZOrderFrameData>;
-
- boneTimelines: Map<BoneTimelineData>;
-
- slotTimelines: Map<SlotTimelineData>;
-
- ffdTimelines: Map<Map<Map<FFDTimelineData>>>;
-
- cachedFrames: Array<boolean>;
-
- constructor();
-
- protected _onClear(): void;
-
- cacheFrames(value: number): void;
-
- addBoneTimeline(value: BoneTimelineData): void;
-
- addSlotTimeline(value: SlotTimelineData): void;
-
- addFFDTimeline(value: FFDTimelineData): void;
-
- getBoneTimeline(name: string): BoneTimelineData;
-
- getSlotTimeline(name: string): SlotTimelineData;
-
- getFFDTimeline(skinName: string, slotName: string, displayIndex: number): FFDTimelineData;
- }
- }
- declare namespace dragonBones {
-
- class ArmatureData extends BaseObject {
- private static _onSortSlots(a, b);
-
- static toString(): string;
-
- frameRate: number;
-
- type: ArmatureType;
-
- name: string;
-
- parent: DragonBonesData;
-
- userData: any;
-
- aabb: Rectangle;
-
- bones: Map<BoneData>;
-
- slots: Map<SlotData>;
-
- skins: Map<SkinData>;
-
- animations: Map<AnimationData>;
-
- actions: Array<ActionData>;
-
- cacheFrameRate: number;
-
- scale: number;
- private _boneDirty;
- private _slotDirty;
- private _defaultSkin;
- private _defaultAnimation;
- private _sortedBones;
- private _sortedSlots;
- private _bonesChildren;
-
- constructor();
-
- protected _onClear(): void;
- private _sortBones();
- private _sortSlots();
-
- cacheFrames(value: number): void;
-
- addBone(value: BoneData, parentName: string): void;
-
- addSlot(value: SlotData): void;
-
- addSkin(value: SkinData): void;
-
- addAnimation(value: AnimationData): void;
-
- getBone(name: string): BoneData;
-
- getSlot(name: string): SlotData;
-
- getSkin(name: string): SkinData;
-
- getAnimation(name: string): AnimationData;
-
- sortedBones: Array<BoneData>;
-
- sortedSlots: Array<SlotData>;
-
- defaultSkin: SkinData;
-
- defaultAnimation: AnimationData;
- }
-
- class BoneData extends BaseObject {
-
- static toString(): string;
-
- inheritTranslation: boolean;
-
- inheritRotation: boolean;
-
- inheritScale: boolean;
-
- bendPositive: boolean;
-
- chain: number;
-
- chainIndex: number;
-
- weight: number;
-
- length: number;
-
- name: string;
-
- parent: BoneData;
-
- ik: BoneData;
-
- transform: Transform;
-
- constructor();
-
- protected _onClear(): void;
- }
-
- class SlotData extends BaseObject {
-
- static DEFAULT_COLOR: ColorTransform;
-
- static generateColor(): ColorTransform;
-
- static toString(): string;
-
- displayIndex: number;
-
- zOrder: number;
-
- blendMode: BlendMode;
-
- name: string;
-
- parent: BoneData;
-
- color: ColorTransform;
-
- actions: Array<ActionData>;
-
- constructor();
-
- protected _onClear(): void;
- }
-
- class SkinData extends BaseObject {
-
- static toString(): string;
-
- name: string;
-
- slots: Map<SlotDisplayDataSet>;
-
- constructor();
-
- protected _onClear(): void;
-
- addSlot(value: SlotDisplayDataSet): void;
-
- getSlot(name: string): SlotDisplayDataSet;
- }
-
- class SlotDisplayDataSet extends BaseObject {
- static toString(): string;
- slot: SlotData;
- displays: Array<DisplayData>;
- constructor();
-
- protected _onClear(): void;
- }
-
- class DisplayData extends BaseObject {
- static toString(): string;
- isRelativePivot: boolean;
- type: DisplayType;
- name: string;
- texture: TextureData;
- armature: ArmatureData;
- mesh: MeshData;
- pivot: Point;
- transform: Transform;
- constructor();
-
- protected _onClear(): void;
- }
-
- class MeshData extends BaseObject {
- static toString(): string;
- skinned: boolean;
- slotPose: Matrix;
- uvs: Array<number>;
- vertices: Array<number>;
- vertexIndices: Array<number>;
- boneIndices: Array<Array<number>>;
- weights: Array<Array<number>>;
- boneVertices: Array<Array<number>>;
- bones: Array<BoneData>;
- inverseBindPose: Array<Matrix>;
- constructor();
-
- protected _onClear(): void;
- }
- }
- declare namespace dragonBones {
-
- class DragonBonesData extends BaseObject {
-
- static toString(): string;
-
- autoSearch: boolean;
-
- frameRate: number;
-
- name: string;
-
- armatures: Map<ArmatureData>;
- private _armatureNames;
-
- protected _onClear(): void;
-
- getArmature(name: string): ArmatureData;
-
- armatureNames: Array<string>;
-
- dispose(): void;
- }
- }
- declare namespace dragonBones {
-
- class ActionData extends BaseObject {
- static toString(): string;
- type: ActionType;
- bone: BoneData;
- slot: SlotData;
- data: Array<any>;
- constructor();
- protected _onClear(): void;
- }
-
- class EventData extends BaseObject {
- static toString(): string;
- type: EventType;
- name: string;
- data: any;
- bone: BoneData;
- slot: SlotData;
- constructor();
- protected _onClear(): void;
- }
-
- abstract class FrameData<T> extends BaseObject {
- position: number;
- duration: number;
- prev: T;
- next: T;
- constructor();
-
- protected _onClear(): void;
- }
-
- abstract class TweenFrameData<T> extends FrameData<T> {
- static samplingCurve(curve: Array<number>, frameCount: number): Array<number>;
- tweenEasing: number;
- curve: Array<number>;
- constructor();
-
- protected _onClear(): void;
- }
-
- class AnimationFrameData extends FrameData<AnimationFrameData> {
- static toString(): string;
- actions: Array<ActionData>;
- events: Array<EventData>;
- constructor();
-
- protected _onClear(): void;
- }
-
- class ZOrderFrameData extends FrameData<ZOrderFrameData> {
- zOrder: Array<number>;
- constructor();
-
- protected _onClear(): void;
- }
-
- class BoneFrameData extends TweenFrameData<BoneFrameData> {
- static toString(): string;
- tweenScale: boolean;
- tweenRotate: number;
- guideCurve: Array<number>;
- transform: Transform;
- constructor();
-
- protected _onClear(): void;
- }
-
- class SlotFrameData extends TweenFrameData<SlotFrameData> {
- static DEFAULT_COLOR: ColorTransform;
- static generateColor(): ColorTransform;
- static toString(): string;
- displayIndex: number;
- color: ColorTransform;
- constructor();
-
- protected _onClear(): void;
- }
-
- class ExtensionFrameData extends TweenFrameData<ExtensionFrameData> {
- static toString(): string;
- type: ExtensionType;
- tweens: Array<number>;
- keys: Array<number>;
- constructor();
-
- protected _onClear(): void;
- }
- }
- declare namespace dragonBones {
-
- abstract class DataParser {
- protected static DATA_VERSION_2_3: string;
- protected static DATA_VERSION_3_0: string;
- protected static DATA_VERSION_4_0: string;
- protected static DATA_VERSION: string;
- protected static TEXTURE_ATLAS: string;
- protected static SUB_TEXTURE: string;
- protected static FORMAT: string;
- protected static IMAGE_PATH: string;
- protected static WIDTH: string;
- protected static HEIGHT: string;
- protected static ROTATED: string;
- protected static FRAME_X: string;
- protected static FRAME_Y: string;
- protected static FRAME_WIDTH: string;
- protected static FRAME_HEIGHT: string;
- protected static DRADON_BONES: string;
- protected static ARMATURE: string;
- protected static BONE: string;
- protected static IK: string;
- protected static SLOT: string;
- protected static SKIN: string;
- protected static DISPLAY: string;
- protected static ANIMATION: string;
- protected static Z_ORDER: string;
- protected static FFD: string;
- protected static FRAME: string;
- protected static PIVOT: string;
- protected static TRANSFORM: string;
- protected static AABB: string;
- protected static COLOR: string;
- protected static FILTER: string;
- protected static VERSION: string;
- protected static IS_GLOBAL: string;
- protected static FRAME_RATE: string;
- protected static TYPE: string;
- protected static NAME: string;
- protected static PARENT: string;
- protected static LENGTH: string;
- protected static DATA: string;
- protected static DISPLAY_INDEX: string;
- protected static BLEND_MODE: string;
- protected static INHERIT_TRANSLATION: string;
- protected static INHERIT_ROTATION: string;
- protected static INHERIT_SCALE: string;
- protected static TARGET: string;
- protected static BEND_POSITIVE: string;
- protected static CHAIN: string;
- protected static WEIGHT: string;
- protected static FADE_IN_TIME: string;
- protected static PLAY_TIMES: string;
- protected static SCALE: string;
- protected static OFFSET: string;
- protected static POSITION: string;
- protected static DURATION: string;
- protected static TWEEN_EASING: string;
- protected static TWEEN_ROTATE: string;
- protected static TWEEN_SCALE: string;
- protected static CURVE: string;
- protected static GUIDE_CURVE: string;
- protected static EVENT: string;
- protected static SOUND: string;
- protected static ACTION: string;
- protected static ACTIONS: string;
- protected static DEFAULT_ACTIONS: string;
- protected static X: string;
- protected static Y: string;
- protected static SKEW_X: string;
- protected static SKEW_Y: string;
- protected static SCALE_X: string;
- protected static SCALE_Y: string;
- protected static ALPHA_OFFSET: string;
- protected static RED_OFFSET: string;
- protected static GREEN_OFFSET: string;
- protected static BLUE_OFFSET: string;
- protected static ALPHA_MULTIPLIER: string;
- protected static RED_MULTIPLIER: string;
- protected static GREEN_MULTIPLIER: string;
- protected static BLUE_MULTIPLIER: string;
- protected static UVS: string;
- protected static VERTICES: string;
- protected static TRIANGLES: string;
- protected static WEIGHTS: string;
- protected static SLOT_POSE: string;
- protected static BONE_POSE: string;
- protected static TWEEN: string;
- protected static KEY: string;
- protected static COLOR_TRANSFORM: string;
- protected static TIMELINE: string;
- protected static PIVOT_X: string;
- protected static PIVOT_Y: string;
- protected static Z: string;
- protected static LOOP: string;
- protected static AUTO_TWEEN: string;
- protected static HIDE: string;
- protected static _getArmatureType(value: string): ArmatureType;
- protected static _getDisplayType(value: string): DisplayType;
- protected static _getBlendMode(value: string): BlendMode;
- protected static _getActionType(value: string): ActionType;
- protected _data: DragonBonesData;
- protected _armature: ArmatureData;
- protected _skin: SkinData;
- protected _slotDisplayDataSet: SlotDisplayDataSet;
- protected _mesh: MeshData;
- protected _animation: AnimationData;
- protected _timeline: any;
- protected _isOldData: boolean;
- protected _isGlobalTransform: boolean;
- protected _isAutoTween: boolean;
- protected _animationTweenEasing: number;
- protected _timelinePivot: Point;
- protected _helpPoint: Point;
- protected _helpTransformA: Transform;
- protected _helpTransformB: Transform;
- protected _helpMatrix: Matrix;
- protected _rawBones: Array<BoneData>;
- constructor();
-
- abstract parseDragonBonesData(rawData: any, scale: number): DragonBonesData;
-
- abstract parseTextureAtlasData(rawData: any, textureAtlasData: TextureAtlasData, scale: number): void;
- private _getTimelineFrameMatrix(animation, timeline, position, transform);
- protected _globalToLocal(armature: ArmatureData): void;
- protected _mergeFrameToAnimationTimeline(framePostion: number, actions: Array<ActionData>, events: Array<EventData>): void;
-
- static parseDragonBonesData(rawData: any): DragonBonesData;
-
- static parseTextureAtlasData(rawData: any, scale?: number): any;
- }
- }
- declare namespace dragonBones {
-
- class ObjectDataParser extends DataParser {
-
- protected static _getBoolean(rawData: any, key: string, defaultValue: boolean): boolean;
-
- protected static _getNumber(rawData: any, key: string, defaultValue: number): number;
-
- protected static _getString(rawData: any, key: string, defaultValue: string): string;
-
- protected static _getParameter(rawData: Array<any>, index: number, defaultValue: any): any;
-
- constructor();
-
- protected _parseArmature(rawData: any, scale: number): ArmatureData;
-
- protected _parseBone(rawData: any): BoneData;
-
- protected _parseIK(rawData: any): void;
-
- protected _parseSlot(rawData: any, zOrder: number): SlotData;
-
- protected _parseSkin(rawData: any): SkinData;
-
- protected _parseSlotDisplaySet(rawData: any): SlotDisplayDataSet;
-
- protected _parseDisplay(rawData: any): DisplayData;
-
- protected _parseMesh(rawData: any): MeshData;
-
- protected _parseAnimation(rawData: any): AnimationData;
-
- protected _parseBoneTimeline(rawData: any): BoneTimelineData;
-
- protected _parseSlotTimeline(rawData: any): SlotTimelineData;
-
- protected _parseFFDTimeline(rawData: any): FFDTimelineData;
-
- protected _parseAnimationFrame(rawData: any, frameStart: number, frameCount: number): AnimationFrameData;
-
- protected _parseZOrderFrame(rawData: any, frameStart: number, frameCount: number): ZOrderFrameData;
-
- protected _parseBoneFrame(rawData: Object, frameStart: number, frameCount: number): BoneFrameData;
-
- protected _parseSlotFrame(rawData: any, frameStart: number, frameCount: number): SlotFrameData;
-
- protected _parseFFDFrame(rawData: any, frameStart: number, frameCount: number): ExtensionFrameData;
-
- protected _parseTweenFrame<T extends TweenFrameData<T>>(rawData: any, frame: T, frameStart: number, frameCount: number): void;
-
- protected _parseFrame<T extends FrameData<T>>(rawData: any, frame: T, frameStart: number, frameCount: number): void;
-
- protected _parseTimeline<T extends FrameData<T>>(rawData: Object, timeline: TimelineData<T>, frameParser: (rawData: any, frameStart: number, frameCount: number) => T): void;
- /**
- * @private
- */
- protected _parseActionData(rawData: any, actions: Array<ActionData>, bone: BoneData, slot: SlotData): void;
- /**
- * @private
- */
- protected _parseEventData(rawData: any, events: Array<EventData>, bone: BoneData, slot: SlotData): void;
- /**
- * @private
- */
- protected _parseTransform(rawData: Object, transform: Transform): void;
- /**
- * @private
- */
- protected _parseColorTransform(rawData: Object, color: ColorTransform): void;
- /**
- * @inheritDoc
- */
- parseDragonBonesData(rawData: any, scale?: number): DragonBonesData;
- /**
- * @inheritDoc
- */
- parseTextureAtlasData(rawData: any, textureAtlasData: TextureAtlasData, scale?: number): void;
- /**
- * @private
- */
- private static _instance;
- /**
- * @deprecated
- * @see dragonBones.BaseFactory#parseDragonBonesData()
- */
- static getInstance(): ObjectDataParser;
- }
- }
- declare namespace dragonBones {
- /**
- * @language zh_CN
- * 贴图集数据。
- * @version DragonBones 3.0
- */
- abstract class TextureAtlasData extends BaseObject {
- /**
- * @language zh_CN
- * 是否开启共享搜索。 [true: 开启, false: 不开启]
- * @default false
- * @version DragonBones 4.5
- */
- autoSearch: boolean;
- /**
- * @language zh_CN
- * 贴图集缩放系数。
- * @version DragonBones 3.0
- */
- scale: number;
- /**
- * @language zh_CN
- * 贴图集名称。
- * @version DragonBones 3.0
- */
- name: string;
- /**
- * @language zh_CN
- * 贴图集图片路径。
- * @version DragonBones 3.0
- */
- imagePath: string;
- /**
- * @inheritDoc
- */
- protected _onClear(): void;
- /**
- * @private
- */
- getTexture(name: string): TextureData;
- }
- /**
- * @private
- */
- abstract class TextureData extends BaseObject {
- static generateRectangle(): Rectangle;
- rotated: boolean;
- name: string;
- frame: Rectangle;
- parent: TextureAtlasData;
- region: Rectangle;
- constructor();
- /**
- * @inheritDoc
- */
- protected _onClear(): void;
- }
- }
- declare namespace dragonBones {
- /**
- * @private
- */
- type BuildArmaturePackage = {
- dataName?: string;
- textureAtlasName?: string;
- data?: DragonBonesData;
- armature?: ArmatureData;
- skin?: SkinData;
- };
- /**
- * @language zh_CN
- * 创建骨架的基础工厂。 (通常只需要一个全局工厂实例)
- * @see dragonBones.DragonBonesData
- * @see dragonBones.TextureAtlasData
- * @see dragonBones.ArmatureData
- * @see dragonBones.Armature
- * @version DragonBones 3.0
- */
- abstract class BaseFactory {
- protected static _defaultParser: ObjectDataParser;
- /**
- * @language zh_CN
- * 是否开启共享搜索。 [true: 开启, false: 不开启]
- * 如果开启,创建一个骨架时,可以从多个龙骨数据中寻找骨架数据,或贴图集数据中寻找贴图数据。 (通常在有共享导出的数据时开启)
- * @see dragonBones.DragonBonesData#autoSearch
- * @see dragonBones.TextureAtlasData#autoSearch
- * @version DragonBones 4.5
- */
- autoSearch: boolean;
- /**
- * @private
- */
- protected _dataParser: DataParser;
- /**
- * @private
- */
- protected _dragonBonesDataMap: Map<DragonBonesData>;
- /**
- * @private
- */
- protected _textureAtlasDataMap: Map<Array<TextureAtlasData>>;
- /**
- * @private
- */
- constructor(dataParser?: DataParser);
- /**
- * @private
- */
- protected _getTextureData(textureAtlasName: string, textureName: string): TextureData;
- /**
- * @private
- */
- protected _fillBuildArmaturePackage(dataPackage: BuildArmaturePackage, dragonBonesName: string, armatureName: string, skinName: string, textureAtlasName: string): boolean;
- /**
- * @private
- */
- protected _buildBones(dataPackage: BuildArmaturePackage, armature: Armature): void;
- /**
- * @private
- */
- protected _buildSlots(dataPackage: BuildArmaturePackage, armature: Armature): void;
- /**
- * @private
- */
- protected _replaceSlotDisplay(dataPackage: BuildArmaturePackage, displayData: DisplayData, slot: Slot, displayIndex: number): void;
- /**
- * @private
- */
- protected abstract _generateTextureAtlasData(textureAtlasData: TextureAtlasData, textureAtlas: any): TextureAtlasData;
- /**
- * @private
- */
- protected abstract _generateArmature(dataPackage: BuildArmaturePackage): Armature;
- /**
- * @private
- */
- protected abstract _generateSlot(dataPackage: BuildArmaturePackage, slotDisplayDataSet: SlotDisplayDataSet, armature: Armature): Slot;
- /**
- * @language zh_CN
- * 解析并添加龙骨数据。
- * @param rawData 需要解析的原始数据。 (JSON)
- * @param name 为数据提供一个名称,以便可以通过这个名称获取数据,如果未设置,则使用数据中的名称。
- * @returns DragonBonesData
- * @see #getDragonBonesData()
- * @see #addDragonBonesData()
- * @see #removeDragonBonesData()
- * @see dragonBones.DragonBonesData
- * @version DragonBones 4.5
- */
- parseDragonBonesData(rawData: any, name?: string, scale?: number): DragonBonesData;
- /**
- * @language zh_CN
- * 解析并添加贴图集数据。
- * @param rawData 需要解析的原始数据。 (JSON)
- * @param textureAtlas 贴图集数据。 (JSON)
- * @param name 为数据指定一个名称,以便可以通过这个名称获取数据,如果未设置,则使用数据中的名称。
- * @param scale 为贴图集设置一个缩放值。
- * @returns 贴图集数据
- * @see #getTextureAtlasData()
- * @see #addTextureAtlasData()
- * @see #removeTextureAtlasData()
- * @see dragonBones.TextureAtlasData
- * @version DragonBones 4.5
- */
- parseTextureAtlasData(rawData: any, textureAtlas: Object, name?: string, scale?: number): TextureAtlasData;
- /**
- * @language zh_CN
- * 获取指定名称的龙骨数据。
- * @param name 数据名称。
- * @returns DragonBonesData
- * @see #parseDragonBonesData()
- * @see #addDragonBonesData()
- * @see #removeDragonBonesData()
- * @see dragonBones.DragonBonesData
- * @version DragonBones 3.0
- */
- getDragonBonesData(name: string): DragonBonesData;
- /**
- * @language zh_CN
- * 添加龙骨数据。
- * @param data 龙骨数据。
- * @param name 为数据指定一个名称,以便可以通过这个名称获取数据,如果未设置,则使用数据中的名称。
- * @see #parseDragonBonesData()
- * @see #getDragonBonesData()
- * @see #removeDragonBonesData()
- * @see dragonBones.DragonBonesData
- * @version DragonBones 3.0
- */
- addDragonBonesData(data: DragonBonesData, name?: string): void;
- /**
- * @language zh_CN
- * 移除龙骨数据。
- * @param name 数据名称。
- * @param disposeData 是否释放数据。 [false: 不释放, true: 释放]
- * @see #parseDragonBonesData()
- * @see #getDragonBonesData()
- * @see #addDragonBonesData()
- * @see dragonBones.DragonBonesData
- * @version DragonBones 3.0
- */
- removeDragonBonesData(name: string, disposeData?: boolean): void;
- /**
- * @language zh_CN
- * 获取指定名称的贴图集数据列表。
- * @param name 数据名称。
- * @returns 贴图集数据列表。
- * @see #parseTextureAtlasData()
- * @see #addTextureAtlasData()
- * @see #removeTextureAtlasData()
- * @see dragonBones.textures.TextureAtlasData
- * @version DragonBones 3.0
- */
- getTextureAtlasData(name: string): Array<TextureAtlasData>;
- /**
- * @language zh_CN
- * 添加贴图集数据。
- * @param data 贴图集数据。
- * @param name 为数据指定一个名称,以便可以通过这个名称获取数据,如果未设置,则使用数据中的名称。
- * @see #parseTextureAtlasData()
- * @see #getTextureAtlasData()
- * @see #removeTextureAtlasData()
- * @see dragonBones.textures.TextureAtlasData
- * @version DragonBones 3.0
- */
- addTextureAtlasData(data: TextureAtlasData, name?: string): void;
- /**
- * @language zh_CN
- * 移除贴图集数据。
- * @param name 数据名称。
- * @param disposeData 是否释放数据。 [false: 不释放, true: 释放]
- * @see #parseTextureAtlasData()
- * @see #getTextureAtlasData()
- * @see #addTextureAtlasData()
- * @see dragonBones.textures.TextureAtlasData
- * @version DragonBones 3.0
- */
- removeTextureAtlasData(name: string, disposeData?: boolean): void;
- /**
- * @language zh_CN
- * 清除所有的数据。
- * @param disposeData 是否释放数据。 [false: 不释放, true: 释放]
- * @version DragonBones 4.5
- */
- clear(disposeData?: boolean): void;
- /**
- * @language zh_CN
- * 创建一个指定名称的骨架。
- * @param armatureName 骨架数据名称。
- * @param dragonBonesName 龙骨数据名称,如果未设置,将检索所有的龙骨数据,当多个龙骨数据中包含同名的骨架数据时,可能无法创建出准确的骨架。
- * @param skinName 皮肤名称,如果未设置,则使用默认皮肤。
- * @param textureAtlasName 贴图集数据名称,如果未设置,则使用龙骨数据。
- * @returns 骨架
- * @see dragonBones.Armature
- * @version DragonBones 3.0
- */
- buildArmature(armatureName: string, dragonBonesName?: string, skinName?: string, textureAtlasName?: string): Armature;
- /**
- * @language zh_CN
- * 将指定骨架的动画替换成其他骨架的动画。 (通常这些骨架应该具有相同的骨架结构)
- * @param toArmature 指定的骨架。
- * @param fromArmatreName 其他骨架的名称。
- * @param fromSkinName 其他骨架的皮肤名称,如果未设置,则使用默认皮肤。
- * @param fromDragonBonesDataName 其他骨架属于的龙骨数据名称,如果未设置,则检索所有的龙骨数据。
- * @param ifRemoveOriginalAnimationList 是否移除原有的动画。 [true: 移除, false: 不移除]
- * @returns 是否替换成功。 [true: 成功, false: 不成功]
- * @see dragonBones.Armature
- * @version DragonBones 4.5
- */
- copyAnimationsToArmature(toArmature: Armature, fromArmatreName: string, fromSkinName?: string, fromDragonBonesDataName?: string, ifRemoveOriginalAnimationList?: boolean): boolean;
- /**
- * @language zh_CN
- * 将指定插槽的显示对象替换为指定资源创造出的显示对象。
- * @param dragonBonesName 指定的龙骨数据名称。
- * @param armatureName 指定的骨架名称。
- * @param slotName 指定的插槽名称。
- * @param displayName 指定的显示对象名称。
- * @param slot 指定的插槽实例。
- * @param displayIndex 要替换的显示对象的索引,如果未设置,则替换当前正在显示的显示对象。
- * @version DragonBones 4.5
- */
- replaceSlotDisplay(dragonBonesName: string, armatureName: string, slotName: string, displayName: string, slot: Slot, displayIndex?: number): void;
- /**
- * @language zh_CN
- * 将指定插槽的显示对象列表替换为指定资源创造出的显示对象列表。
- * @param dragonBonesName 指定的 DragonBonesData 名称。
- * @param armatureName 指定的骨架名称。
- * @param slotName 指定的插槽名称。
- * @param slot 指定的插槽实例。
- * @version DragonBones 4.5
- */
- replaceSlotDisplayList(dragonBonesName: string, armatureName: string, slotName: string, slot: Slot): void;
- /**
- * @private
- */
- getAllDragonBonesData(): Map<DragonBonesData>;
- /**
- * @private
- */
- getAllTextureAtlasData(): Map<Array<TextureAtlasData>>;
- }
- }
- declare let jsb: any;
- /** Running in the editor. */
- declare let CC_EDITOR: boolean;
- /** Preview in browser or simulator. */
- declare let CC_PREVIEW: boolean;
- /** Running in the editor or preview. */
- declare let CC_DEV: boolean;
- /** Running in the editor or preview, or build in debug mode. */
- declare let CC_DEBUG: boolean;
- /** Running in published project. */
- declare let CC_BUILD: boolean;
- /** Running in native platform (mobile app, desktop app, or simulator). */
- declare let CC_JSB: boolean;
- /** Running in the engine's unit test. */
- declare let CC_TEST: boolean;
- /** Running in the Wechat's mini game. */
- declare let CC_WECHATGAME: boolean;
- /** Running in the bricks. */
- declare let CC_QQPLAY: boolean;
|