广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 4630 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
casper1315 手机
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x11 鲜花 x20
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[插件] [1.6]如何把人物编写进去SMA技能档里面
请问一下各位大大们 小弟是开超级英雄伺服
要怎么样把枪械/人物 模组 编写进去 技能档里面
熬夜熬了两天 最后结果都是 失败 失败 失败.....爬文也找不到类似的编写方式
简单说 我要怎么样让一个技能 多一个人物模组
让玩家点了技能之后 同时也拥有人物外表 该怎么样编写 在这边跪求各路边写大大们了>"<


论坛
您无法观看到此用户名称
献花 x0 回到顶端 [楼 主] From:台湾中华电信股份有限公司 | Posted:2015-12-19 04:15 |
Nailaz 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖 社区建设奖 创作大师奖
小有名气
级别: 小有名气 该用户目前不上站
推文 x77 鲜花 x254
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

先#include <cstrike>

在技能功能新增此行
cs_set_user_model(index, "ABC")

plugin_precache()
这里新增
precache_model("models/player/ABC/ABC.mdl")

依此类推


web front-end and software engineer.
献花 x0 回到顶端 [1 楼] From:台湾中华电信股份有限公司 | Posted:2015-12-20 10:27 |
casper1315 手机
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x11 鲜花 x20
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 Nailaz 于 2015-12-20 10:27 发表的: 到引言文
先#include <cstrike>

在技能功能新增此行
cs_set_user_model(index, "ABC")

plugin_precache()
这里新增
precache_model("models/player/ABC/ABC.mdl")

依此类推


很抱歉>< 问题出在哪里....我还是没出现人物模组 我有照你说的方法去尝试 可以帮我看一下吗((你说的语法有给反红))

// ALIEN! - from the Alien movie series.


/* CVARS - copy and paste to shconfig.cfg


//Alien
alien_level 5
alien_health 125 //Default 125
alien_armor 125 //Default 125
alien_knifemult 0.0 //Damage multiplyer for his Knife
alien_vision 160 //How far vision is zoomed out (must be 100 or higer because normal vision is 90)
alien_tint 50 //How dark the green screen tint is (255-no sight, 0-perfect sight)
alien_alpha 50 //Alpha level when invisible (0-invisible, 255-full visibility)
alien_knifemode 0 //1-knife only can't change weapons, 0-Alien Vision on only when knifing (def 0)


*/


/*
* v1.5 - vittu - 6/27/06
*      - Updated to amxmodx only, requires amxx 1.70 or higher.
*      - Plus other minor code changes.
*
* v1.4 - vittu - 7/3/05
*      - Fixed crash to AMX caused by the previous update, since
*          AMX can't register a MSG_ONE_UNRELIABLE message.
*
* v1.3 - vittu - 6/14/05
*      - Minor code clean up.
*
* v1.2 - vittu - 3/18/05
*      - Updated and cleaned code a bit. Still functions the same.
*      - Added new cvar alien_knifemode to allow weapon change or not,
*         old version was knife only.
*
*/


#include <amxmodx>
#include <superheromod>
#include <cstrike>


// GLOBAL VARIABLES
new HeroName[] = "异型"
new HasAlien[SH_MAXSLOTS+1]
new AlienModeOn[SH_MAXSLOTS+1]
new MsgSetFOV
new CvarKnifeMult, CvarZoomVision, CvarTint, CvarAlphaValue, CvarMode
//----------------------------------------------------------------------------------------------
public plugin_init()
{
// Plugin Info
register_plugin("SUPERHERO Alien", "1.5", "Freecode/AssKicR")


// DO NOT EDIT THIS FILE TO CHANGE CVARS, USE THE SHCONFIG.CFG
register_cvar("alien_level", "5")
register_cvar("alien_health", "125")
register_cvar("alien_armor", "125")
CvarKnifeMult = register_cvar("alien_knifemult", "0.0")
CvarZoomVision = register_cvar("alien_vision", "160")
CvarTint = register_cvar("alien_tint", "50")
CvarAlphaValue = register_cvar("alien_alpha", "50")
CvarMode = register_cvar("alien_knifemode", "0")


// FIRE THE EVENT TO CREATE THIS SUPERHERO!
shCreateHero(HeroName, "拿刀拥有特效", "使用刀时拥有更广的视野", false, "alien_level")


// REGISTER EVENTS THIS HERO WILL RESPOND TO! (AND SERVER COMMANDS)
// INIT
register_srvcmd("alien_init", "alien_init")
shRegHeroInit(HeroName, "alien_init")


// EVENTS
register_event("ResetHUD", "new_spawn", "b")
register_event("CurWeapon", "weapon_change", "be", "1=1")
register_event("DeathMsg", "alien_death", "a")
register_event("Damage", "alien_damage", "b", "2!0")


// Let Server know about Alien's Variables
shSetMaxHealth(HeroName, "alien_health")
shSetMaxArmor(HeroName, "alien_armor")


MsgSetFOV = get_user_msgid("SetFOV")
}
//----------------------------------------------------------------------------------------------
public alien_init()
{
// First Argument is an id
new temp[6]
read_argv(1, temp, 5)
new id = str_to_num(temp)


// 2nd Argument is 0 or 1 depending on whether the id has the hero
read_argv(2, temp, 5)
new hasPowers = str_to_num(temp)


switch(hasPowers)
{
case true:
{
HasAlien[id] = true
weapon_change(id)
}


case false:
{
//This gets run if they had the power but don't anymore
if ( is_user_connected(id) && HasAlien[id] )
{
alien_vision_off(id)
shRemHealthPower(id)
shRemArmorPower(id)
}


HasAlien[id] = false
}
}
}
//----------------------------------------------------------------------------------------------
public new_spawn(id)
{
if ( shModActive() && is_user_alive(id) && HasAlien[id] )
weapon_change(id)
}
//----------------------------------------------------------------------------------------------
public weapon_change(id)
{
if ( !shModActive() || !is_user_alive(id) || !HasAlien[id] )
return


//new wpnid = read_data(2)
// Do it this way since this might be called on alien_init or reset hud
new clipNull, ammoNull, wpnid = get_user_weapon(id, clipNull, ammoNull)


switch(wpnid)
{
case CSW_KNIFE:
alien_vision_on(id)


default:
{
// Force knife only or not?
switch(get_pcvar_num(CvarMode))
{
case 1:
client_cmd(id, "weapon_knife")
case 0:
alien_vision_off(id)
}
}
}
}
//----------------------------------------------------------------------------------------------
alien_vision_on(id)
{
if ( shModActive() && is_user_alive(id) && HasAlien[id] )
{
AlienModeOn[id] = true


// Prevent cvar from being set too low
new Zoom = get_pcvar_num(CvarZoomVision)


if ( Zoom < 100 )
{
debugMessage("(Alien) Alien Vision must be set higher than 100, defaulting to 100", 0, 0)
Zoom = 100
set_cvar_num("alien_vision", Zoom)
}


// Set Zoom
message_begin(MSG_ONE, MsgSetFOV, {0,0,0}, id)
write_byte(Zoom)
message_end()


// Set once before loop task
setScreenFlash(id, 0, 200, 0, 13, get_pcvar_num(CvarTint))
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(CvarAlphaValue))


// Loop to make sure their screen stays green and they stay invisible
set_task(1.0, "alien_loop", id, "", 0, "b")
}
}
//----------------------------------------------------------------------------------------------
public alien_loop(id)
{
// Prevents loop from running on disconnected clients
if ( !shModActive() || !is_user_connected(id) )
{
remove_task(id)
return
}


if ( HasAlien[id] && is_user_alive(id) )
{
setScreenFlash(id, 0, 200, 0, 13, get_pcvar_num(CvarTint))
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(CvarAlphaValue))
}
}
//----------------------------------------------------------------------------------------------
alien_vision_off(id)
{
if ( !is_user_connected(id) || !AlienModeOn[id] )
return


remove_task(id)


// Quickly removes screenflash
setScreenFlash(id, 0, 200, 0, 1, get_pcvar_num(CvarTint))


// Reset Zoom
message_begin(MSG_ONE, MsgSetFOV, {0,0,0}, id)
write_byte(90) //Normal, not Zooming
message_end()


// Resets alpha
set_user_rendering(id)


// Makes sure this function is only called once, if alien mode was on
AlienModeOn[id] = false
}
//----------------------------------------------------------------------------------------------
public alien_damage(id)
{
if ( !shModActive() || !is_user_alive(id) )
return


new weapon, bodypart, attacker = get_user_attacker(id, weapon, bodypart)


if ( attacker <= 0 || attacker > SH_MAXSLOTS )
return


if ( HasAlien[attacker] && weapon == CSW_KNIFE && is_user_alive(id) )
{
new damage = read_data(2)
new headshot = bodypart == 1 ? 1 : 0


// do extra damage
new extraDamage = floatround(damage * get_pcvar_float(CvarKnifeMult) - damage)
if ( extraDamage > 0 )
shExtraDamage(id, attacker, extraDamage, "knife", headshot)
}
}
//----------------------------------------------------------------------------------------------
public alien_death()
{
new id = read_data(2)


if ( !HasAlien[id] )
return


alien_vision_off(id)
}
//----------------------------------------------------------------------------------------------
public client_connect(id)
{
HasAlien[id] = false
AlienModeOn[id] = false


// Yeah don't want any left over residuals
remove_task(id)
}
//----------------------------------------------------------------------------------------------
public plugin_precache() {
                        cs_set_user_model(index, "alien")
precache_model("models/player/alien/alien.mdl")
}


[ 此文章被casper1315在2015-12-23 01:55重新编辑 ]


论坛
您无法观看到此用户名称
献花 x0 回到顶端 [2 楼] From:台湾中华电信股份有限公司 | Posted:2015-12-22 21:30 |
Nailaz 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖 社区建设奖 创作大师奖
小有名气
级别: 小有名气 该用户目前不上站
推文 x77 鲜花 x254
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

cs_set_user_model(id, "alien")

要放在你的效果那段

你看不太懂sma吧..

看你内容应该是加在
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(CvarAlphaValue))
这行下面

alien_vision_off(id){}
这里面再写上把模组换回原本的
cs_set_user_model(id, "原模组名字")


web front-end and software engineer.
献花 x0 回到顶端 [3 楼] From:台湾中华电信股份有限公司 | Posted:2015-12-26 19:37 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.055629 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言