Přímý download link pro skripty Essentials verze 3.3: DOWNLOAD SCRIPTS
Celý balík jako velká hromada skriptů plus nový skript nazvaný anchor.
Skripty jsou určeny pro Game Maker Studio verze 1.x
( YYG 2.11.2016 vypustili do světa GMS 2.0 )
Skript anchor mění souřadnice objektu tak, aby byl vždy k vybranému objektu zleva, zprava, shora nebo zdola. K tomu lze použít buď pevný offset jako prosté číslo nebo procentuální offset založený na skutečné velikosti sprite. Povinný je jen argument0, kterým je object. Nemusí existovat - v tom případě se nic neděje.
syntax:
anchor(object_id,[offset_x],[offset_y],[left_contact_%],[right_contact_%],[top_contact_%],[bottom_contact_%])
Typické použití bude v Eventu Step.
object_id - id objektu podle kterého se provede zarovnání
offset_x, offset_y - pevná vzdálenost přičítaná k poloze ( čili self.x = object_id.x + offset_x )
left_contact_% - procentuální vzdálenost ( object_id bude zleva od self )
right_contact_% - procentuální vzdálenost ( object_id bude zleva od self )
top_contact_% - procentuální vzdálenost ( object_id bude zleva od self )
bottom_contact_% - procentuální vzdálenost ( object_id bude zleva od self )
Příklad:
anchor(obj_player,0,0,100);
Objekt ve kterém se skript spustí bude umístěn tak, aby měl obj_player po své levé straně přesně na dotek.
mým koníčkem je tvořit drobné, nezávislé hry a občas se prostě potřebuji vypsat - TomBen
6. listopadu 2016
3. září 2016
Calc Bar
Je to drobná aplikace, kterou jsem potřeboval já za specifickým účelem a přesto, že mě nenapadá, jak by se mohl hodit komukoliv jinému, dávám ho sem ke stažení jako exe pro Windows a zdroják. Teoreticky je možné, že se někdo bude chtít podívat, jak je to napsané. Howgh.
>DOWNLOAD<
Ovládání: Numpad 0123456789+-*/.
- výsledek =
- umazání od konce Backspace
- ukončení Alt+F4
- umístění je vždy horní střed obrazovky
- když ztratí focus zmenší se na několika pixelovou čáru a klepnutím se zas zvětší

>DOWNLOAD<
Ovládání: Numpad 0123456789+-*/.
- výsledek =
- umazání od konce Backspace
- ukončení Alt+F4
- umístění je vždy horní střed obrazovky
- když ztratí focus zmenší se na několika pixelovou čáru a klepnutím se zas zvětší
25. června 2016
Minutka
Prográmek na měření - sledování ubíhajícího času. Tři samostatně nastavitelné pásky odměřují čas v rozsahu 1 vteřina až 99 dní. Aplikace měří i když není spuštěna. Po znovuspuštění se prostě časy přepočítají. Je k dispozici verze pro Windows a pro Android.
Ovládání je jednoduché.
Ikona zvonku spouští a zastavuje měření času. Ikony plus a mínus nastavují délku měření ( i za běhu ). Pokud je měření spuštěno, v pruhu se zobrazuje kolik už uběhlo nebo o kolik už se přesáhlo - pokud už je víc. V kosodélníku nad pruhem je název, který lze kliknutím změnit. Pak je tam nastavený čas a na konci měřítko. Měřítko určuje kolik se přidá nebo ubere kliknutím na plus či mínus ikony. Pokud je třeba 10min, tak kliknutí na mínus ubere 10 min ( nejmenší čas je 1s ).
Ovládání je jednoduché.
Ikona zvonku spouští a zastavuje měření času. Ikony plus a mínus nastavují délku měření ( i za běhu ). Pokud je měření spuštěno, v pruhu se zobrazuje kolik už uběhlo nebo o kolik už se přesáhlo - pokud už je víc. V kosodélníku nad pruhem je název, který lze kliknutím změnit. Pak je tam nastavený čas a na konci měřítko. Měřítko určuje kolik se přidá nebo ubere kliknutím na plus či mínus ikony. Pokud je třeba 10min, tak kliknutí na mínus ubere 10 min ( nejmenší čas je 1s ).
11. června 2016
Essentials 2016 - balíček skriptů v GML
Skripty Essentials 2016 se stahují jako .gmz projekt všechny najednou. Když nějaký není potřeba, lze ho většinou smazat ( některé se potřebují navzájem ). Jsou roztříděny po složkách a přidávají do Game Makeru zajímavé funkce:
Essentials General ( všeobecné skripty čili kdeco)
Essentials Debug ( čili ladicí skripty )
Essentials Math ( čili matematika a logika )
Essentials Keyboard ( čili obsluha klávesnice )
Essentials Draw ( čili vykreslování )
Essentials Windows Views ( čili okna v oknech )
Essentials Spritebase ( čili databáze obrázků )
Essentials 2D buffer management ( čili správa bufferu )
Essentials Array XD ( čili vícerozměrná pole )
Essentials CSV file reader ( čili čtení externí tabulky )
Essentials Dice ( čili házení kostkou )
Essentials Motion Position ( čili pohyb a poloha )
Essentials Paths ( čili křivky )
Essentials Strings ( čili texty )
Essentials Balanced Resources ( čili vyvažování hodnot )
Essentials Quicksort ( čili řazení pole )
Essentials General ( všeobecné skripty čili kdeco)
Essentials General ( všeobecné skripty čili kdeco)
wait(i)- chvíle čekání uvnitř kódu ( číslo i musí být vysoké, aby to bylo poznat, třeba 1000 )
mouse_on()
- zjišťuje, zda je nad objektem myš ( if mouse_on { ... } )
Loader() a Saver()
- zajištuje ukládání hodnot do souboru, názvy proměnných se dopisují dovnitř skriptu podle vzoru uvedeného v komentářových řádcích, hodnoty těchto zapsaných proměnných se uloží najednou v datovém souboru ( obsah není snadno čitelný a měnitelný člověkem ), hodí se na autosave uvnitř hry, neobtěžuje hráče dialogem
create_object_list(obj1,num1,[obj2],[num2]..,[obj7],[num7])
- vytvoří mimo obrazovku dané počty vybraných objektů a vrátí seznam jejich id.
instance_nearest_list(x,y,obj,[limit])
- najde limit nebo všechny instance objektu a dodá seznam jejich id seřazených podle vzdálenosti od souřadnic x,y
play_simply(filename,time_to_kill)
- přehraje zvuk přímo ze souboru, k přehrávání se používá objekt sound_destroyer, který hraje tolik vteřin, kolik je time_to_kill hodnota, -1 znamená, že se sám nezničí, fuknce vrací id instance sound_destroyeru
find_random_instance(object_index or all )
- vrátí id náhodné instance daného objektu
message(string)
- vypíše na obrazovku zprávu, čeká na odklepnutí ( nezáleží, co právě ve hře probíhá - všechno pozastaví ), používá objekt messenger
zpět na přehled všech Essentials 2016
Essentials Debug ( čili ladicí skripty )
Essentials Debug ( čili ladicí skripty )
draw_ds_list(ds_list_ref,max_printed_items_int, start_at_item_int)- vypíše na obrazovku do pozice x,y svého objektu obsah ds_listu ( font je třeba nastavit předem )
write_log(anything)
- do souboru debug.log zapíše zprávu a čas zápisu, přidává pořád další záznamy, soubor nemusí existovat, argument nemusí být string
clear_log()
- pokud soubor debug.log existuje je vyčištěn, jinak je založen, zapsán čas, game_id a záznam "Log started"
console('TEXT_LABEL:',[anything],[anything2],[anything3]..)
- univerzální ladicí výpis nahrazující show_message, který vypíše automaticky do okna Compile i objekt, který ho spustil, čas a k proměnným vypisuje jejich typ, obsah výpisu navíc vrací, takže lze použít i například takto: write_log( console('Životy',lives)) // dvojtečky a mezery se dělají automaticky
cout(string or number)
- kratší verze show_debug_message, narozdíl od skriptu console, nedělá nic navíc
show_fps()
- vypisuje aktuální počet snímků za vteřinu, dává se do DrawGUI, ve fullscreenu vypisuje do levého horního rohu, v okně vypisuje do záhlaví okna, používá font -1 a sám nastauje barvy ( lze změnit uvnitř skriptu )
Essentials Stopwatch
( nezávislý systém k přesnému měření času, nepotřebuje ostatní skripty k činnosti )
stopwatch_start()
- spustí přesné měření času, používá proměnnou global.STOPWATCH, kterou si sám založí
stopwatch_stop()
- vrátí čas změřený od posledního stopwatch_start v mikrosekundách
stopwatch_debug_message(), nelze použít bez předchozího spuštění stopwatch_start()
- pokud se použije do Compile okna vypíše ''Processed in N µs", kde N je změřený čas od posledního stopwatch_start, nelze použít bez předchozího spuštění stopwatch_start()
zpět na přehled všech Essentials 2016
Essentials Math ( čili matematika a logika )
Essentials Math ( čili matematika a logika )
is_between(arg0,<=arg1,<=arg2)- vrací true, pokud je arg1 v rozsahu mezi arg0 a arg2, například is_between(4,20,9) vrátí false
e(int)
- vrací hodnotu 10 na Ntou, určeno k zápisu velkých čísel, např. 12*e(9) bude 12000000000
divisible(A,B)
- vrací true, když A je dělitelné B a false, když není
factorial(n)
- vrací faktoriál čísla n čili n * n-1 * n-2 ....1 ( pozor, při záporných číslech nehodí error, ale vrátí 1 )
binom(n,k)
- vrací n nad k, čili n! /( k! - (n-k)! )
bernstein(k,n,t)
- vrací k-tý bernstainův polynom z celkového stupně n v místě parametru t
čili binom(n,k)*power((1-t),n-k)*power(t,k)
zpět na přehled všech Essentials 2016
Essentials Keyboard ( čili obsluha klávesnice )
Essentials Keyboard ( čili obsluha klávesnice )
WASD()- dává se do Stepu a způsobí pohyb objektu ( W nahoru, S dolů, A doleva, D doprava )
ctrl()
- vrací true, pokud je stisknut levý nebo pravý Control
shift()
- vrací true, pokud je stisknut levý nebo pravý Shift
alt()
- vrací true, pokud je stisknut levý nebo pravý Alt
Pozn. Je možný zápis if ctrl && alt && shift ( ... )
TAB_key_released()
- vrací true, pokud byla v minulém Stepu puštěna klávesa TAB
TAB_key_pressed()
- vrací true, pokud byla v minulém Stepu stisknuta klávesa TAB
TAB_key_hold()
- vrací true, pokud je držena klávesa TAB
zpět na přehled všech Essentials 2016
Essentials Draw ( čili vykreslování )
Essentials Draw ( čili vykreslování )
no_anim(frame)- většinou se hodí do Create eventu a vypne animaci s tím, že nechá staticky pro objekt jeden zvolený obrázek, například no_anim(5) nastaví šestý obrázek ( protože první je nula ).
clr([color],[alpha],[erase_screen])
- nastaví barvu, průhlednost (volitelně) a smaže obrazovku ( volitelně)
set_font(align_0to9,color,alpha,font__reference)
- nastaví jednou funkcí kompletní vlastnosti vypisování textu,
align je zarovnání jako na Numpadu: 5 střed, 8 nahoře, 2 dole, atd.
čili text zarovnaný zleva a výškově na střed bude 4.
color a alpha jsou barva a průhlednost
font_reference je název fontu v resource tree Game Makeru
fade_screen(color,amount)
- celou obrazovku překryje barvou o dané průhlednosti ( 0 je průhledná, 1 plná ), hodí se například na postupné zatmívání do černé
draw_sprite_button()
- vykresluje sprite jako tlačítko, čili vykreslí snímek 1 pokud je nad instancí myš, jinak 0, obrázek je dán sprite_indexem, používá mouse_on() skript a nekontroluje, zda instance sprite má ( když nemá, tak to skončí errorem z GM )
draw_ball(x,y,color)
- vykreslí stínovanou kuličku ( velikost 15.5 px ) uvedené barvy na pozici x,y
( obrázek je výřez snímku z šedého roomu po provedení draw_ball(x,y,c_red); )
skript se hodí jako reprezentace určité barvy v případě, že zatím chybí sprite
draw_crosshair(x,y,size,color)
- vykreslí zaměřovací kříž o velikosti size a barvě color do pozice x,y, průhlednost bere aktuální nastavenou
draw_surface_centered(surface_id,x,y)
- vykreslí surface tak, aby jeho střed byl v pozici x,y
surface_duplicate(surface_id)
- vytvoří kopii daného surface a vrací jeho index
ellipse_render(width,height,color1,alpha1,color2,alpha2,precision)
- vytvoří sprite obsahující vyplněnou elipsu, nějak takto:
( pozor, stínování různých průhledností bůhvíproč ( možná spíše YYGvíproč ) nefunguje správně
- pokud to dokáže někdo opravit, ať se mi ozve, já to sem pak dám )
precision je pixelová hustota vyplňování - takže třeba 0.001
Příklad použití:
if sprite_index==-1
{ sprite_index=ellipse_render(500,200,c_red,1,c_blue,1,0.001); }
else
{ draw_sprite(sprite_index,0,room_width/2,room_height/2); }
zpět na přehled všech Essentials 2016
Přihlásit se k odběru:
Příspěvky (Atom)