Expression 2 - в переводе с англ.яз, выражение. Это усложненная форма wire mod, а также является языком lua, благодаря которому мы играем в Гаррис мод.
Смысл - Expression 2 в том, что можно выразить свою фантазию в реальность например: Самолет, вертолет, машины и т.д.
Для его изучения потребуются немалые усилия. Но те которые уже изучали любые языки программирования, им будет легче - так-как будут встречаться похожие команды и функции.
Начнем с базовых знаний. Для создания любого рода чипа, надо знать основные команды.
name - Имя нашего чипа.
inputs - Список переменных которые будут выдаваться на вход нашего чипа.
outputs - Похожий смысл inputs но он выдает переменные на выход чипа. P.S нужен для соединения wire linkом, например: Колонки соединить с кнопкой включения.
persist - Переменные которые используются внутри чипа, которые нельзя вывести как outputs.
trigger - Здесь будут указываться все наши события которые будет сбрасывать наш чип.
Вот мы и договорили о базовых командах для переменных.
Теперь поговорим о добавочных.
model - Здесь чип будет указывать нашу модель, чтобы ее написать надо открыть меню пропов и нажать пкм на любо из них, затем нажать на cope model. И вставить.
Синтаксис и циклы чипа вы можете прочитать на WIKI.
И самая главная часть, это задачи благодаря которым вы будете придавать значение условию.
Number - число
Vector - Вектор
Angel - Угло
String - Строка
Entity - Что либо например npc
Bone - Кость
Wirelink - Ваерлин с помощью него вы можете соединять outputs
Ranger data - Измеритель дистанции
Complex - Number Комплекс чисел
Tabble - Таблица
Array - Массив
Quaternion - Кватерион
Matrix - Матрица
.
Самое главное мы закончили, осталось показать наглядные примеры по построению холки.
Список холок от wire modа
cone
cube
cylinder
hexagon
icosphere
icosphere2
icosphere3
octagon
plane
prism
pyramid
right_prism
sphere
sphere2
sphere3
tetra
torus
torus2
Так начнем создание.
Я не стану писать уже нудные и долгие выражения а напишу легки путь для создания, любо человек разберется и сам сможет писать. Я обозначу места где надо изменять для вас ваши примеры.
@Name 228
@persist [O E BASE]:entity Just N Table:table
interval(100)
if(first()){
E=entity()
O=owner()
print("Ваши слова")
Base = holoCreate(0,E:toWorld(vec(0,0,0)),vec(0.001),E:toWorld(ang(0,0,0)),vec(255),"")
Table:pushArray(array(Base:toWorld(vec(21,0,43-ПЕРЕДВИЖЕНИЕ МОДЕЛИ ПО МИРУ)),vec(0.7,0.7,0.7-РАЗМЕРЫ ВАШЕ МОДЕЛИ),Base:toWorld(ang(0,0,0-КУДА ОНА БУДЕТ ПОВЕРНУТА ПО ОСИ)),vec(255),-Сдесь будут стоять в кавычках модели которые вы выбрали"models/sprops/triangles/right/size_1/rtri_12x60.mdl",-Сдесь будет стоять материал для холки"models/gibs/metalgibs/metal_gibs"))
if(Table:count() > N) {
while(holoCanCreate() & perf()) {
N++
local Holo = Table[N, array]
holoCreate(N, Holo:vector(1), Holo:vector(2), Holo:angle(3), Holo:vector(4), Holo:string(5))
holoMaterial(N, Holo:string(6))
holoParent(N, Base)
}
} else {
if(O:weapon():type() == "weapon_crowbar"-ТУТ ПИШЕМ ЗА МЕСТО КАКОГО ОРУЖИЯ БУДЕТ СТОЯТЬ ВАША ХОЛКА) { Just = 1 O:weapon():setAlpha(0) } else { Just = 0 }
if(changed(Just)&Just) {
holoPos(0,O:attachmentPos("anim_attachment_rh- rh правая рука -lh левая и снизу тоже самое"))
holoAng(0,O:attachmentAng("anim_attachment_rh - но можно заменить например на eyes что значит холка будет на уровне глаз, а само выражение на руки"))
holoParentAttachment(0,O,"anim_attachment_rh")
}
elseif(!Just) {
if(!first()){
holoUnparent(0)
holoPos(0,E:pos())
holoAng(0,E:angles())
holoParent(0,E)
}
}
Под итог я решил вставить собственно ручною работу.
В интернете не не найдете а у малой крайности людей которым я дал его дал как и вам.
@Name 228
@persist [O E BASE]:entity Just N Table:table
interval(100)
if(first()){
E=entity()
O=owner()
print("Hello My name is Over kill Chip by OverKill")
Base = holoCreate(0,E:toWorld(vec(0,0,0)),vec(0.001),E:toWorld(ang(0,0,0)),vec(255),"")
Table:pushArray(array(Base:toWorld(vec(21,0,43)),vec(0.7,0.7,0.7),Base:toWorld(ang(0,0,0)),vec(255),"models/sprops/triangles/right/size_1/rtri_12x60.mdl","models/gibs/metalgibs/metal_gibs"))
Table:pushArray(array(Base:toWorld(vec(0,0,15)),vec(1,1,1),Base:toWorld(ang(0,0,0)),vec(255),"models/sprops/cylinders/size_1/cylinder_1_5x66.mdl","models/props/CS_militia/roofbeams01"))
Table:pushArray(array(Base:toWorld(vec(0,0,49)),vec(0.5,0.5,0.5),Base:toWorld(ang(0,0,0)),vec(255),"models/Gibs/HGIBS.mdl"))
Table:pushArray(array(Base:toWorld(vec(0,0,45)),vec(1,1,1),Base:toWorld(ang(0,0,0)),vec(255),"models/sprops/misc/cones/size_0/cone_3x6.mdl","models/XQM/CellShadedCamo_diffuse"))
Table:pushArray(array(Base:toWorld(vec(0,0,-18)),vec(1,1,1),Base:toWorld(ang(180,0,0)),vec(255),"models/sprops/misc/cones/size_0/cone_3x6.mdl","models/XQM/CellShadedCamo_diffuse"))
}
A1 = O:keyAttack2()&O:weapon():type() == "weapon_crowbar"
if(changed(A1)&A1){
####Bullet = propSpawn("models/props_phx/misc/flakshell_big.mdl", O:pos()+(O:forward()/1.1+O:up())*40,O:eyeAngles()+ang(90,0,0),0)
Bullet = propSpawn("models/Gibs/HGIBS.mdl", O:pos()+(O:forward()/1.1+O:up())*40,O:eyeAngles()+ang(90,0,0),0)
Bullet:setMass(1000)
Bullet:setColor(vec(127,95,0))
Bullet:propFreeze(0)
V = O:eye()*10+O:up()*0.1
Bullet:setMass(2000)
Bullet:setVel(V*999999999999999*Bullet:mass())
Bullet:setTrails(35, 0, 2, "trails/laser", vec(255,255,255), 200)
#Bullet:remove(10)
O:soundPlay("fire", 0, "ambient/explosions/explode_4.wav")
}
if(Table:count() > N) {
while(holoCanCreate() & perf()) {
N++
local Holo = Table[N, array]
holoCreate(N, Holo:vector(1), Holo:vector(2), Holo:angle(3), Holo:vector(4), Holo:string(5))
holoMaterial(N, Holo:string(6))
holoParent(N, Base)
}
} else {
if(O:weapon():type() == "weapon_crowbar") { Just = 1 O:weapon():setAlpha(0) } else { Just = 0 }
if(changed(Just)&Just) {
holoPos(0,O:attachmentPos("anim_attachment_rh"))
holoAng(0,O:attachmentAng("anim_attachment_rh"))
holoParentAttachment(0,O,"anim_attachment_rh")
}
elseif(!Just) {
if(!first()){
holoUnparent(0)
holoPos(0,E:pos())
holoAng(0,E:angles())
holoParent(0,E)
}
}
}
Этот чип позволяет при ношении оружия "Лом" заменяет сам лом на кучу моделек, а в данном случае это коса и на ПКМ стреляет пропами которые убивают за мгновение ока.
Спасибо и всем удачи.
Смысл - Expression 2 в том, что можно выразить свою фантазию в реальность например: Самолет, вертолет, машины и т.д.
Для его изучения потребуются немалые усилия. Но те которые уже изучали любые языки программирования, им будет легче - так-как будут встречаться похожие команды и функции.
Начнем с базовых знаний. Для создания любого рода чипа, надо знать основные команды.
name - Имя нашего чипа.
inputs - Список переменных которые будут выдаваться на вход нашего чипа.
outputs - Похожий смысл inputs но он выдает переменные на выход чипа. P.S нужен для соединения wire linkом, например: Колонки соединить с кнопкой включения.
persist - Переменные которые используются внутри чипа, которые нельзя вывести как outputs.
trigger - Здесь будут указываться все наши события которые будет сбрасывать наш чип.
Вот мы и договорили о базовых командах для переменных.
Теперь поговорим о добавочных.
model - Здесь чип будет указывать нашу модель, чтобы ее написать надо открыть меню пропов и нажать пкм на любо из них, затем нажать на cope model. И вставить.
Синтаксис и циклы чипа вы можете прочитать на WIKI.
И самая главная часть, это задачи благодаря которым вы будете придавать значение условию.
Number - число
Vector - Вектор
Angel - Угло
String - Строка
Entity - Что либо например npc
Bone - Кость
Wirelink - Ваерлин с помощью него вы можете соединять outputs
Ranger data - Измеритель дистанции
Complex - Number Комплекс чисел
Tabble - Таблица
Array - Массив
Quaternion - Кватерион
Matrix - Матрица
.
Самое главное мы закончили, осталось показать наглядные примеры по построению холки.
Список холок от wire modа
cone
cube
cylinder
hexagon
icosphere
icosphere2
icosphere3
octagon
plane
prism
pyramid
right_prism
sphere
sphere2
sphere3
tetra
torus
torus2
Так начнем создание.
Я не стану писать уже нудные и долгие выражения а напишу легки путь для создания, любо человек разберется и сам сможет писать. Я обозначу места где надо изменять для вас ваши примеры.
@Name 228
@persist [O E BASE]:entity Just N Table:table
interval(100)
if(first()){
E=entity()
O=owner()
print("Ваши слова")
Base = holoCreate(0,E:toWorld(vec(0,0,0)),vec(0.001),E:toWorld(ang(0,0,0)),vec(255),"")
Table:pushArray(array(Base:toWorld(vec(21,0,43-ПЕРЕДВИЖЕНИЕ МОДЕЛИ ПО МИРУ)),vec(0.7,0.7,0.7-РАЗМЕРЫ ВАШЕ МОДЕЛИ),Base:toWorld(ang(0,0,0-КУДА ОНА БУДЕТ ПОВЕРНУТА ПО ОСИ)),vec(255),-Сдесь будут стоять в кавычках модели которые вы выбрали"models/sprops/triangles/right/size_1/rtri_12x60.mdl",-Сдесь будет стоять материал для холки"models/gibs/metalgibs/metal_gibs"))
if(Table:count() > N) {
while(holoCanCreate() & perf()) {
N++
local Holo = Table[N, array]
holoCreate(N, Holo:vector(1), Holo:vector(2), Holo:angle(3), Holo:vector(4), Holo:string(5))
holoMaterial(N, Holo:string(6))
holoParent(N, Base)
}
} else {
if(O:weapon():type() == "weapon_crowbar"-ТУТ ПИШЕМ ЗА МЕСТО КАКОГО ОРУЖИЯ БУДЕТ СТОЯТЬ ВАША ХОЛКА) { Just = 1 O:weapon():setAlpha(0) } else { Just = 0 }
if(changed(Just)&Just) {
holoPos(0,O:attachmentPos("anim_attachment_rh- rh правая рука -lh левая и снизу тоже самое"))
holoAng(0,O:attachmentAng("anim_attachment_rh - но можно заменить например на eyes что значит холка будет на уровне глаз, а само выражение на руки"))
holoParentAttachment(0,O,"anim_attachment_rh")
}
elseif(!Just) {
if(!first()){
holoUnparent(0)
holoPos(0,E:pos())
holoAng(0,E:angles())
holoParent(0,E)
}
}
Под итог я решил вставить собственно ручною работу.
В интернете не не найдете а у малой крайности людей которым я дал его дал как и вам.
@Name 228
@persist [O E BASE]:entity Just N Table:table
interval(100)
if(first()){
E=entity()
O=owner()
print("Hello My name is Over kill Chip by OverKill")
Base = holoCreate(0,E:toWorld(vec(0,0,0)),vec(0.001),E:toWorld(ang(0,0,0)),vec(255),"")
Table:pushArray(array(Base:toWorld(vec(21,0,43)),vec(0.7,0.7,0.7),Base:toWorld(ang(0,0,0)),vec(255),"models/sprops/triangles/right/size_1/rtri_12x60.mdl","models/gibs/metalgibs/metal_gibs"))
Table:pushArray(array(Base:toWorld(vec(0,0,15)),vec(1,1,1),Base:toWorld(ang(0,0,0)),vec(255),"models/sprops/cylinders/size_1/cylinder_1_5x66.mdl","models/props/CS_militia/roofbeams01"))
Table:pushArray(array(Base:toWorld(vec(0,0,49)),vec(0.5,0.5,0.5),Base:toWorld(ang(0,0,0)),vec(255),"models/Gibs/HGIBS.mdl"))
Table:pushArray(array(Base:toWorld(vec(0,0,45)),vec(1,1,1),Base:toWorld(ang(0,0,0)),vec(255),"models/sprops/misc/cones/size_0/cone_3x6.mdl","models/XQM/CellShadedCamo_diffuse"))
Table:pushArray(array(Base:toWorld(vec(0,0,-18)),vec(1,1,1),Base:toWorld(ang(180,0,0)),vec(255),"models/sprops/misc/cones/size_0/cone_3x6.mdl","models/XQM/CellShadedCamo_diffuse"))
}
A1 = O:keyAttack2()&O:weapon():type() == "weapon_crowbar"
if(changed(A1)&A1){
####Bullet = propSpawn("models/props_phx/misc/flakshell_big.mdl", O:pos()+(O:forward()/1.1+O:up())*40,O:eyeAngles()+ang(90,0,0),0)
Bullet = propSpawn("models/Gibs/HGIBS.mdl", O:pos()+(O:forward()/1.1+O:up())*40,O:eyeAngles()+ang(90,0,0),0)
Bullet:setMass(1000)
Bullet:setColor(vec(127,95,0))
Bullet:propFreeze(0)
V = O:eye()*10+O:up()*0.1
Bullet:setMass(2000)
Bullet:setVel(V*999999999999999*Bullet:mass())
Bullet:setTrails(35, 0, 2, "trails/laser", vec(255,255,255), 200)
#Bullet:remove(10)
O:soundPlay("fire", 0, "ambient/explosions/explode_4.wav")
}
if(Table:count() > N) {
while(holoCanCreate() & perf()) {
N++
local Holo = Table[N, array]
holoCreate(N, Holo:vector(1), Holo:vector(2), Holo:angle(3), Holo:vector(4), Holo:string(5))
holoMaterial(N, Holo:string(6))
holoParent(N, Base)
}
} else {
if(O:weapon():type() == "weapon_crowbar") { Just = 1 O:weapon():setAlpha(0) } else { Just = 0 }
if(changed(Just)&Just) {
holoPos(0,O:attachmentPos("anim_attachment_rh"))
holoAng(0,O:attachmentAng("anim_attachment_rh"))
holoParentAttachment(0,O,"anim_attachment_rh")
}
elseif(!Just) {
if(!first()){
holoUnparent(0)
holoPos(0,E:pos())
holoAng(0,E:angles())
holoParent(0,E)
}
}
}
Этот чип позволяет при ношении оружия "Лом" заменяет сам лом на кучу моделек, а в данном случае это коса и на ПКМ стреляет пропами которые убивают за мгновение ока.
Спасибо и всем удачи.