Svyatoy
Участник
- Сообщения
- 335
- Реакции
- 137
Век живи, век учись!
Привет всем, я к вам с новым вопросом!
Моя новая задача поставила меня в очередной временный тупик, так как я знаю, что реализовать это возможно, но не могу найти как...
Суть в том, что мне надо заспавнить фрукты и сделать их медленно падающими ровно вниз.
Скорость падения примерно как у игрока при «sv_gravity 20»
На данный момент пробовал устанавливать гравитацию, разные MOVETYPE... Но это не помогло*
* Возможно что-то делал не так. Если не трудно - лучше за мной перепроверить
Ах да. Игрок должен мочь "уничтожить" их при помощи оружия.
Прикладываю код, который имею сейчас. В нём фрукты пока просто появляются в рандомной нужной мне точке
Привет всем, я к вам с новым вопросом!
Моя новая задача поставила меня в очередной временный тупик, так как я знаю, что реализовать это возможно, но не могу найти как...
Суть в том, что мне надо заспавнить фрукты и сделать их медленно падающими ровно вниз.
Скорость падения примерно как у игрока при «sv_gravity 20»
На данный момент пробовал устанавливать гравитацию, разные MOVETYPE... Но это не помогло*
* Возможно что-то делал не так. Если не трудно - лучше за мной перепроверить
Ах да. Игрок должен мочь "уничтожить" их при помощи оружия.
Прикладываю код, который имею сейчас. В нём фрукты пока просто появляются в рандомной нужной мне точке
Sourcepawn:
decl Float:f_StartLocation[3];
ResetPack(g_hBuild);
f_StartLocation[0] = ReadPackFloat(g_hBuild);
f_StartLocation[1] = ReadPackFloat(g_hBuild);
f_StartLocation[2] = ReadPackFloat(g_hBuild);
f_StartLocation[1] += Sine(0.3*GetRandomInt(0, 255))*125;
f_StartLocation[2] += 200.0;
int iEntity = CreateEntityByName("prop_physics");
if(iEntity != -1)
{
switch(GetRandomInt(1, 3))
{
case 1:
{
DispatchKeyValue(iEntity, "classname", "watermelon_projectile");
SetEntityModel(iEntity, MODEL_WATERMELON);
}
case 2:
{
DispatchKeyValue(iEntity, "classname", "orange_projectile");
SetEntityModel(iEntity, MODEL_ORANGE);
}
case 3:
{
DispatchKeyValue(iEntity, "classname", "banannabunch_projectile");
SetEntityModel(iEntity, MODEL_BANANNA);
}
}
if(DispatchSpawn(iEntity))
{
SetEntProp(iEntity, Prop_Send, "m_usSolidFlags", 8);
SetEntProp(iEntity, Prop_Send, "m_nSolidType", 6);
TeleportEntity(iEntity, f_StartLocation, NULL_VECTOR, NULL_VECTOR);
}
}
Define`s:
#define MODEL_WATERMELON "models/props_junk/watermelon01.mdl"
#define MODEL_ORANGE "models/props/cs_italy/orange.mdl"
#define MODEL_BANANNA "models/props/cs_italy/bananna_bunch.mdl"
OnMapStart:
PrecacheModel(MODEL_WATERMELON, true);
PrecacheModel("models/props_junk/watermelon01_chunk01a.mdl", true);
PrecacheModel("models/props_junk/watermelon01_chunk01b.mdl", true);
PrecacheModel("models/props_junk/watermelon01_chunk01c.mdl", true);
PrecacheModel("models/props_junk/watermelon01_chunk02a.mdl", true);
PrecacheModel("models/props_junk/watermelon01_chunk02b.mdl", true);
PrecacheModel("models/props_junk/watermelon01_chunk02c.mdl", true);
PrecacheModel(MODEL_ORANGE, true);
PrecacheModel("models/props/cs_italy/orangegib1.mdl", true);
PrecacheModel("models/props/cs_italy/orangegib2.mdl", true);
PrecacheModel("models/props/cs_italy/orangegib3.mdl", true);
PrecacheModel(MODEL_BANANNA, true);
PrecacheModel("models/props/cs_italy/bananna1.mdl", true);
PrecacheModel("models/props/cs_italy/bananna2.mdl", true);