Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ

Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ


Âñòóïëåíèå



Ïðèâåòñòâóþ, ÷èòàòåëü.  ýòîì ðóêîâîäñòâå ÿ áû õîòåë ðàññêàçàòü òåáå îáî âñåì, ÷òî êàñàåòñÿ ñîçäàíèÿ ãîëîãðàìì â Ãàððèñ ìîäå. ß ïîêàæó âñå ôóíêöèè, êîòîðûå ó÷àñòâóþò â ñîçäàíèè ãîëîãðàìì, à òàêæå ïðîäåìîíñòðèðóþ íåáîëüøîé ïðèìåð ñîçäàíèÿ ìèíèãàíà, êîòîðûé áóäåò çàìåíÿòü íàì ôèçãàí (íó íå ñîâñåì çàìåíÿòü, íî îá ýòîì ïîçæå :D).-------------------------Åñëè êòî-òî íå çíàåò, êàê îòêðûòü Expression 2---------------------------------------Äëÿ íà÷àëà íàì ïîíàäîáèòñÿ ñêà÷àòü èç âîðêøîïà àääîí Wiremod: http://steamcommunity.com/sharedfiles/filedetails/?id=160250458.  ýòîò àääîí âêëþ÷åí Expression 2, ÿçûê ïðîãðàììèðîâàíèÿ, ñ ïîìîùüþ êîòîðîãî ìû è áóäåì ñîçäàâàòü ãîëîãðàììû.Ïîñëå òîãî, êàê àääîí ñêà÷àí, íåîáõîäèìî çàïóñòèòü èãðó, îòêðûòü Q-ìåíþ, ñïðàâà ñâåðõó âûáðàòü âêëàäêó "Wire", äàëåå íàéòè ïàïêó "Chips, Gates" è óæå âûáðàòü ïóíêò "Expression 2". Äàëåå ñïðàâà íàæèìàåì êíîïêó New Expression.Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõÏåðåä íàìè ïîÿâëÿåòñÿ îêíî Expression 2, â êîòîðîì ìû è áóäåì ïðîãðàììèðîâàòü íàø ÷èï íà ñîçäàíèå ãîëîãðàìì.Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ-----------------------------------------------------------------------------------------------------------------------------Õî÷ó äîáàâèòü, ÷òî óðîê ðàññ÷èòàí âñå-òàêè íà ëþäåé, õîòü ÷òî-òî óìåþùèõ äåëàòü íà Å2, òàê ÷òî áàçîâûå äåéñòâèÿ ÿ êîììåíòèðîâàòü íå áóäó. Åñëè ÷òî-òî íå ïîíÿòíî, ñïðàøèâàéòå â êîììåíòàðèÿõ.Ïðèÿòíîãî èçó÷åíèÿ ãîëîãðàìì :)





×òî òàêîå, ñ ÷åì åäÿò?



Ñîáñòâåííî, ãîëîãðàììû - ýòî îáúåêòû, êîòîðûå ìîæíî óâèäåòü, íî íåëüçÿ ïîòðîãàòü. Ó íèõ íåò ôèçèêè, ïîýòîìó åñëè ïðîñòî ñîçäàòü ãîëîãðàììó, îíà îñòàíåòñÿ âèñåòü â âîçäóõå. Åñëè õî÷åòñÿ, íàïðèìåð, ñîçäàòü ôèçèêó ïàäåíèÿ, ïðèäåòñÿ ïðîïèñûâàòü ýòî â êîäå îòäåëüíî. Ãîëîãðàììû ìîæíî ïðèêðåïëÿòü ê äðóãèì ãîëîãðàììàì, ïðîïàì, äàæå èãðîêàì (ìèíèãàí â êîíöå êàê ðàç è áóäåò ïðèìåðîì).





Ñïèñîê ôóíêöèé



Èòàê, âîò ñïèñîê ôóíêöèé ñ èõ ïîäðîáíûì îïèñàíèåì:
Ôóíêöèÿ Âîçâðàùàåò çíà÷åíèå Îïèñàíèå
holoEntity(N) Ýíòèòè Âîçâðàùàåò ýíòèòè ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoIndex(E) ×èñëî Âîçâðàùàåò èíäåêñ ãîëîãðàììû ïî óêàçàííîé ýíòèòè ãîëîãðàììû
holoCanCreate() ×èñëî Âîçâðàùàåò 1, êîãäà holoCreate() óñïåøíî ñîçäàëà íîâóþ ãîëîãðàììó, äî òåõ ïîð, ïîêà íå äîñòèãíóò ëèìèò ãîëîãðàìì íà ñåðâåðå. Çàìåíÿåò holoRemainingSpawns()
holoRemainingSpawns() ×èñëî Âîçâðàùàåò êîëè÷åñòâî ãîëîãðàìì, êîòîðûå èãðîê åùå ìîæåò ñîçäàòü
holoCreate(N,V,V,A,V,S) Ýíòèòè Ñîçäàåò íîâóþ ãîëîãðàììó ñ ïàðàìåòðàìè: Èíäåêñ, Ïîçèöèÿ, Ðàçìåð, Óãîë, Öâåò, Ìîäåëü. Åñëè ìîäåëü óêàçàíà íåïðàâèëüíî èëè íå óêàçàíà âîâñå, òî óñòàíàâëèâàåòñÿ äåôîëòíàÿ ìîäåëü - êóá
holoCreate(N,V,V,A,V) Ýíòèòè Ñîçäàåò íîâóþ ãîëîãðàììó ñ ïàðàìåòðàìè: Èíäåêñ, Ïîçèöèÿ, Ðàçìåð, Óãîë, Öâåò
holoCreate(N,V,V,A) Ýíòèòè Ñîçäàåò íîâóþ ãîëîãðàììó ñ ïàðàìåòðàìè: Èíäåêñ, Ïîçèöèÿ, Ðàçìåð, Óãîë
holoCreate(N,V,V) Ýíòèòè Ñîçäàåò íîâóþ ãîëîãðàììó ñ ïàðàìåòðàìè: Èíäåêñ, Ïîçèöèÿ, Ðàçìåð
holoCreate(N,V) Ýíòèòè Ñîçäàåò íîâóþ ãîëîãðàììó ñ ïàðàìåòðàìè: Èíäåêñ, Ïîçèöèÿ
holoCreate(N) Ýíòèòè Ñîçäàåò íîâóþ ãîëîãðàììó ñ ïàðàìåòðîì: Èíäåêñ
holoDelete(N) - Óäàëÿåò ãîëîãðàììó ñ óêàçàííûì èíäåêñîì
holoDeleteAll() - Óäàëÿåò âñå ãîëîãðàììû âëàäåëüöà ÷èïà
holoScale(N,V) - Óñòàíàâëèâàåò ðàçìåðû ãîëîãðàììû ñ çàäàííûì èíäåêñîì ïî çàäàííîìó âåêòîðó
holoScale(N) Âåêòîð Âîçâðàùàåò ðàçìåðû ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoScaleUnits(N,V) - Óñòàíàâëèâàåò ðàçìåðû ãîëîãðàììû ñ çàäàííûì èíäåñêîì ïî çàäàííîìó âåêòîðó â åäèíèöàõ Ãàððèñ Ìîäà
holoScaleUnits(N) Âåêòîð Âîçâðàùàåò ðàçìåðû ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoPos(N,V) - Óñòàíàâëèâàåò ïîçèöèþ ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoColor(N,V,N) - Óñòàíàâëèâàåò öâåò è ïðîçðà÷íîñòü ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoColor(N,V) - Óñòàíàâëèâàåò ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoAlpha(N,N) - Óñòàíàâëèâàåò ïðîçðà÷íîñòü ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoShadow(N,N) - Ðåãóëèðóåò îòîáðàæåíèå òåíè ãîëîãðàììû: 0 - îòêëþ÷èòü îòáðàñûâàíèå òåíè, 1 - âêëþ÷èòü
holoAng(N,A) - Óñòàíàâëèâàåò óãîë ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoModel(N,S,N) - Óñòàíàâëèâàåò ìîäåëü, à òàêæå íîìåð ñêèíà ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoModel(N,S) - Óñòàíàâëèâàåò ìîäåëü ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoSkin(N,N) - Ìåíÿåò ñêèí ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoMaterial(N,S) - Óñòàíàâëèâàåò ìàòåðèàë ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoBodygroup(N,N,N) - Óñòàíàâëèâàåò îñíîâíóþ è ïîáî÷íóþ ãðóïïû ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoBodygroups(N,N) ×èñëî Âîçâðàùàåò êîëè÷åñòâî ïîáî÷íûõ ãðóïï óêàçàííîé îñíîâíîé ãðóïïû ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoDisableShading(N,N) - Îòêëþ÷àåò/Âêëþ÷àåò øåéäèíã ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoRenderFX(N,N) - Óñòàíàâëèâàåò ðåæèì îòîáðàæåíèÿ ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoParent(N,N) - Ïðèâÿçûâàåò ãîëîãðàììó ñ ïåðâûì èíäåêñîì ê ãîëîãðàììå ñî âòîðûì èíäåêñîì
holoParent(N,E) - Ïðèâûçûâàåò ãîëîãðàììó ñ óêàçàííûì èíäåêñîì ê ýíòèòè
holoParentAttachment(N,E,S) Ýíòèòè Ïðèâûçûâàåò ãîëîãðàììó ñ óêàçàííûì èíäåêñîì ê óêàçàííîé ÷àñòè ýíòèòè
holoUnparent(N) - Ñíèìàåò ëþáûå ïðèâÿçêè ñ ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoClipEnabled(N,N) - Âêëþ÷àåò/âûêëþ÷àåò âîçìîæíîñòü ðàçðåçà ãîëîãðàììû ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoClipEnabled(N,N,N) - Àíàëîãè÷íî ïðåäûäóùåé ôóíêöèè, íî â äàííîì ñëó÷àå åñòü âîçìîæíîñòü ìàíèïóëèðîâàíèÿ ðàçíûì êîëè÷åñòâîì ðàçðåçîâ
holoClip(N,V,V,N) - Îïðåäåëÿåò, êàê áóäåò ðàçðåçàòüñÿ ãîëîãðàììà. Ïåðâûé âåêòîð - ïîçèöèÿ ðàçðåçà, âòîðîé - íàïðàâëåíèå. ×åòâåðòûé ïàðàìåòð îïðåäåëÿåò, áóäåò ëè ðàçðåç îòíîñèòåëüíî ãëîáàëüíûõ èëè ëîêàëüíûõ âåêòîðîâ
holoClip(N,N,V,V,N) - Àíàëîãè÷íî ïðåäûäóùåé ôóíêöèè, íî ýòà ôóíêöèÿ ïîçâîëÿåò âûáèðàòü îïðåäåëåííûé ðàçðåç äëÿ ãîëîãðàììû (âòîðîé ïàðàìåòð)
holoClipsAvailable() ×èñëî Âîçâðàùàåò êîëè÷åñòâî âîçìîæíûõ ðàçðåçîâ ãîëîãðàììû ñ óêàçàííûì èíäåêñîì
holoVisible(N,E,N) - Âêëþ÷àåò/Âûêëþ÷àåò îòîáðàæåíèå ãîëîãðàììû ñ óêàçàííûì èíäåêñîì äëÿ óêàçàííîãî ýíòèòè
holoVisible(N,R,N) - Âêëþ÷àåò/Âûêëþ÷àåò îòîáðàæåíèå ãîëîãðàììû ñ óêàçàííûì èíäåêñîì äëÿ óêàçàííîãî âñåõ èãðîêîâ â ìàññèâå R





Ñïèñîê ìîäåëåé äëÿ ãîëîãðàìì



Çäåñü óêàçàíû áàçîâûå ìîäåëè ãîëîãðàìì ñ èõ íàçâàíèÿìè, êîòîðûå íóæíî áóäåò âñòàâèòü â ôóíêöèè holoCreate() èëè holoModel().
Íèçêîïîëèãîíàëüíûå ãîëîãðàììû:
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõcone Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõcube Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõcylinder Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhexagon
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõicosphere Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõicosphere2 Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõicosphere3 Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõoctagon
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõplane Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõprism Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõpyramid Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõright_prism
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõsphere Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõsphere2 Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõsphere3 Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõtetra
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõtorus Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõtorus2 Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõtorus3
Âûñîêîïîëèãîíàëüíûå ãîëîãðàììû:
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_cone Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_cubinder Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_cylinder Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_dome
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_hdome Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_hdome_thick Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_hdome_thin Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_icosphere
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_rcube Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_rcube_thick Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_rcube_thin Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_rcylinder
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_rcylinder_thick Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_rcylinder_thin Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_sphere Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_stube
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_stube_thick Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_stube_thin Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_torus Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_torus_thick
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_torus_thin Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_tube Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_tube_thick Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõhq_tube_thin
Ìîäåëè ìîæíî èñïîëüçîâàòü ëþáûå, êîòîðûå äîñòóïíû â âàøåì Q-ìåíþ, à íå òîëüêî òå áàçîâûå, êîòîðûå óêàçàíû âûøå. Äëÿ ýòîãî íóæíî â Q-ìåíþ ïðàâîé êíîïêîé ìûøè íàæàòü íà ìîäåëü, âûáðàòü Copy to Clipboard, à çàòåì âñòàâèòü â âàø êîä.





Íåêîòîðûå ðàçúÿñíåíèÿ



Áàçîâûå ïàðàìåòðû ãîëîãðàììû:
  • Áàçîâûé âèä ãîëîãðàììû - áåëûé êóá, ìîäåëü "cube".
  • Áàçîâîå ïîëîæåíèå - ïîçèöèÿ ÷èïà, ïîðîäèâøåãî ãîëîãðàììó.
  • Óãîë ãîëîãðàììû ñîîòâåòñòâóåò óãëó ÷èïà, ïîä êîòîðûì îí íàõîäèëñÿ â ìîìåíò ñîçäàíèÿ èëè îáíîâëåíèÿ.





Ñîçäàåì ìèíèãàí



 äàííîì óðîêå ÿ ñîçäàì ìèíèãàí, êîòîðûé íàø ïåðñîíàæ áóäåò äåðæàòü â ðóêàõ, êîãäà îí äåðæèò ôèçãàí, è êîòîðûé áóäåò âèñåòü çà ñïèíîé, åñëè âûáðàíî äðóãîå îðóæèå. ß èñïîëüçóþ ïî÷òè âñå ôóíêöèè, óêàçàííûå â ðóêîâîäñòâå, òàê ÷òî âàì áóäåò ëåã÷å ïîíÿòü íà ïðàêòèêå ðàáîòó êàæäîé èç ýòèõ ôóíêöèé. Íà÷íåì:
@name minigun@persist [E O Base Pivot]:entity I NumHolo Hold T Roll
Äëÿ íà÷àëà îáúÿâèì íåîáõîäèìûå íàì ïåðåìåííûå:E - íàø Å2 ÷èïO - âëàäåëåö ÷èïà, òî åñòü ìûBase - áàçîâàÿ ãîëîãðàììà, ê êîòîðîé áóäóò êðåïèòüñÿ îñòàëüíûåPivot - ãîëîãðàììà, êîòîðàÿ áóäåò êðåïèòüñÿ ê ðóêàì íàøåãî ïåðñîíàæàI - ñ÷åò÷èêNumHolo - êîëè÷åñòâî íàøèõ ãîëîãðàììHold - ïðîâåðêà íà òî, êàêîå îðóæèå ó íàñ â ðóêàõT - ïåðåìåííàÿ, íåîáõîäèìàÿ íàì äëÿ âû÷åòà óãëà âðàùåíèÿRoll - ïðîâåðêà íà íàæàòèå ÏÊÌ
runOnTick(1)if(first()){ E=entity() O=owner() Pivot=holoCreate(0) holoParent(0,E) holoAlpha(0,0) Base=holoCreate(1,E:pos(),vec(0.75,0.75,4),ang(90,0,0),vec(200),"hq_tube") holoParent(1,0) I = 2 NumHolo = 15 Hold=1
Ìû ñîçäàëè ïåðâûå äâå ãîëîãðàììû. Ïåðåìåííîé Pivot ïðèñâîèëè ýíòèòè íóëåâîé ãîëîãðàììû, ÷òîáû ïîòîì çàêðåïèòü åå òàì, ãäå íàì áóäåò óäîáíî. Âûñòàâèëè çíà÷åíèå ïðîçðà÷íîñòè â 0, ïîòîìó ÷òî åå âèäèìîñòü íàì íå íóæíà. Âòîðàÿ ãîëîãðàììà,íàîáîðîò, âèäíà íàì è èìååò ìîäåëü òðóáû. Ïî ýòîé ãîëîãðàììå ìû áóäåì âûðàâíèâàòü îñòàëüíûå. Ïðèâÿçàëè åå ê íóëåâîé ãîëîãðàììå. Äàëåå âûñòàâèëè çíà÷åíèÿ ïåðåìåííûõ, êîòîðûå áóäóò ó÷àñòâîâàòü â ñîçäàíèè ïîñëåäóþùèõ ãîëîãðàìì.
function entity holoStyle(Index,Position:vector,Scale:vector,Angle:angle,Colour:vector,Model:string) { holoPos(Index,Position) holoScale(Index,Scale) holoAng(Index,Angle) holoColor(Index,Colour) holoModel(Index,Model) return holoEntity(Index) }}
Çäåñü ÿ îáúÿâèë ïîëüçîâàòåëüñêóþ ôóíêöèþ, êîòîðàÿ, êàê ìîæíî çàìåòèòü, ïî êîíñòðóêöèè èäåíòè÷íà holoCreate(). ß ñäåëàë òàê, ïîòîìó ÷òî íèæå áóäåò ïðîâåðÿòüñÿ êîëè÷åñòâî ãîëîãðàìì, êîòîðûå ÿ ìîãó ñîçäàòü, à äëÿ ýòîãî ÿ ïðîñòî ñîçäàì ãîëîãðàììû áåç èõ ñòèëèçàöèè.
elseif(I <= NumHolo & holoCanCreate() & I > 0){ holoCreate(I) holoScale(I,vec()) I++ }
Ñîáñòâåííî, ïðîâåðêà íà êîëè÷åñòâî âîçìîæíûõ ñîçäàâàåìûõ ãîëîãðàìì.
elseif(I > NumHolo & I > 0){ holoStyle(2,Base:toWorld(vec(0,6,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(3,Base:toWorld(vec(0,-6,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(4,Base:toWorld(vec(6,0,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(5,Base:toWorld(vec(-6,0,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(6,Base:toWorld(vec(4,4,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(7,Base:toWorld(vec(4,-4,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(8,Base:toWorld(vec(-4,4,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(9,Base:toWorld(vec(-4,-4,0)),vec(0.1,0.1,4),Base:toWorld(ang()),vec(150),"hq_tube") holoStyle(10,Base:toWorld(vec(0,0,-18)),vec(1.2,1.2,0.75),Base:toWorld(ang()),vec(150),"hq_cylinder") holoStyle(11,Base:toWorld(vec(0,0,20)),vec(1.3,1.3,1),Base:toWorld(ang()),vec(150),"hq_cylinder") holoStyle(12,Base:toWorld(vec(-3,-10,23)),vec(0.1,0.1,0.5),Base:toWorld(ang(0,0,90)),vec(150),"hq_cylinder") holoStyle(13,Base:toWorld(vec(-2,0,25)),vec(0.25,0.25,1.75),Base:toWorld(ang(30,0,0)),vec(150),"cube") holoStyle(14,Base:toWorld(vec(2,0,28)),vec(0.2,0.2,0.2),Base:toWorld(ang(0,0,90)),vec(150),"hq_torus") holoStyle(15,Base:toWorld(vec(2,0,28)),vec(0.05,0.05,0.1),Base:toWorld(ang(-60,0,0)),vec(150),"cube")
Çäåñü ÿ ïðîñòî íà÷àë ñîçäàâàòü è âûðàâíèâàòü ãîëîãðàììû. Ïî ñóòè ìèíèãàí óæå ñäåëàí, íî ìû íå ìîæåì åãî åùå äåðæàòü â ðóêàõ.
for(I=2,9){ holoParent(I,10) } for(I=10,NumHolo){ holoParent(I,Base) } I=0
Ïðèêðåïëÿåì ãîëîãðàììû äðóã ê äðóãó. ß ñäåëàë äâà îòäåëüíûõ öèêëà, ïîòîìó ÷òî ìû ïîçæå ñäåëàåì òàê, ÷òîáû ìèíèãàí áûë íå ïðîñòî ìîäåëüêîé, íî è âïîëíå ðàáîòàþùèì è î÷åíü îïàñíûì îðóæèåì :D
}elseif(I==0){ if(O:weapon():type()=="weapon_physgun"){ O:weapon():setAlpha(0) Hold=0 } else{ Hold=1 O:weapon():setAlpha(255) }
Òóò ìû ïðîñòî äåëàåì ïðîçðà÷íûì íàø ôèçãàí, ÷òîáû îí íå ïîðòèë âèä, à çàîäíî äåëàåì ïðîâåðêó íà íîøåíèå íåîáõîäèìîãî íàì îðóæèÿ.
if($Hold){ if(Hold==0){ holoPos(0,O:attachmentPos("anim_attachment_RH")) holoAng(0,O:attachmentAng("anim_attachment_RH")) holoParentAttachment(0,O,"anim_attachment_RH") holoAng(1,Pivot:toWorld(ang(80,-12,180))) holoPos(1,Pivot:toWorld(vec(28,-6,7))) } elseif(Hold==1){ holoPos(0,O:attachmentPos("chest")) holoAng(0,O:attachmentAng("chest")) holoParentAttachment(0,O,"chest") holoAng(1,Pivot:toWorld(ang(0,0,0))) holoPos(1,Pivot:toWorld(vec(-16,0,0))) } }}
 ýòîì áëîêå ìû ïðèâÿçûâàåì íàø ìèíèãàí ê íàøèì ðóêàì, åñëè ñåé÷àñ ó íàñ èñïîëüçóåòñÿ ôèçãàí, èëè ê ãðóäè, åñëè èñïîëüçóåòñÿ ëþáîå äðóãîå îðóæèå.
T=(T+10)%360Roll=O:keyAttack2()if(Roll&!Hold){ holoAng(10,holoEntity(10):toWorld(ang(0,T,0)))#ifdef entity:shootTo(vector,vector,number,number,number,string)holoEntity(10):shootTo(holoEntity(10):pos()-holoEntity(10):forward()*5,O:aimPos()-holoEntity(2):pos()-vec(0,0,30),0,0,0,"toolTracer")#endif holoEntity(10):soundPlay(1,0.3,"weapons/minigun/gunfire/minigun_fire.wav")}
Çäåñü ìû ïðîïèñûâàåì êîä ñòðåëüáû è âðàùåíèÿ ñòâîëîâ íàøåãî ìèíèãàíà. KeyAttack2 - ýòî êëàâèøà ÏÊÌ.*ÂÍÈÌÀÍÈÅ* Äëÿ èñïîëüçîâàíèÿ ôóíêöèè ShootTo âàì íåîáõîäèì Health Core èëè æå àääîí E2Power. Åñëè òàêîâûõ íåò, òî ïðîñòî çàêîììåíòèðóéòå ýòó ôóíêöèþ.  ýòîì ñëó÷àå ìèíèãàí ïðîñòî íå áóäåò ñòðåëÿòü.





Ðåçóëüòàò



Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ
Wiremod Expression 2. Âñ¸ î ãîëîãðàììàõ





Ïîäâåäåì èòîãè



 äàííîì ðóêîâîäñòâå ìû ðàññìîòðåëè âñå ôóíêöèè, ïîçâîëÿþùèå íàì ñîçäàòü ãîëîãðàììû â Garry's Mod'å, óâèäåëè èõ ïðàêòè÷åñêîå ïðèìåíåíèå. Åñëè âàì ÷òî-òî îêàçàëîñü ñëîæíûì, ëèáî âû íå çíàåòå êàêèõ-òî ôóíêöèé, èñïîëüçîâàííûõ â ñîçäàíèè ìèíèãàíà, ïèøèòå â êîììåíòàðèè èëè â ëè÷êó, âñå ðàññêàæó è ïîêàæó. Ïðîøó âàñ òàêæå óêàçàòü íà êàêèå-òî îøèáêè, äîïóùåííûå â ðóêîâîäñòâå, èëè íà îøèáî÷íûé ïåðåâîä.Òàáëèöà ôóíêöèé è êàðòèíêè áàçîâûõ ìîäåëåé âçÿòû ñ îôèöèàëüíîé âèêè Wiremod: http://wiki.wiremod.com/wiki/Expression_2Äîáàâëÿéòå ðóêîâîäñòâî â èçáðàííîå, ÷òîáû èìåòü â èãðå áûñòðûé äîñòóï ê ôóíêöèÿì ñîçäàíèÿ ãîëîãðàìì.



˜˜˜˜˜˜˜ dle 10.6˜˜˜˜˜˜ ˜˜˜˜˜˜˜˜˜
Ïîäåëèòüñÿ
VK Telegram