搜索
查看: 2294|回复: 9

Kinsprite大哥请进~

[复制链接]
发表于 2006-11-5 10:43:23 | 显示全部楼层 |阅读模式 来自 中国–重庆–重庆–永川区
小弟一直在用大哥发布的哪个Warcraft 3
但是我觉得有点不合理的就是大家在游戏里面可以随便改种族,弄的很多人到了6级后乱变种族不爽~
小弟希望大哥指点下把改变种族这个开关选项注销了
小弟找到以下参数可能是开关但是小弟还不确定希望大家指点和修改下
register_clcmd("changerace","change_race",-1,"changerace")

是否是
//register_clcmd("changerace","change_race",-1,"changerace")

就搞定了?
这样会不会出错~
或则能这样更好
玩家在选着改变种族。有个语句提醒就最好了
比如说 :对不起服务器关闭了改变种族选项


希望大哥帮个忙
我刚才这样测试过了
结果一样的能换种族~
现在只有等待大哥指点了。。。。。。。。。。。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
发表于 2006-11-5 11:48:58 | 显示全部楼层 来自 中国–山西–忻州

回复: Kinsprite大哥请进~

han......##@@@@@@@@@@@@@@@
回复

使用道具 举报

发表于 2006-11-5 13:30:27 | 显示全部楼层 来自 中国–辽宁–沈阳

回复: Kinsprite大哥请进~

只改这个地方肯定不行. 还有menu部分, 其它部分我就不清楚了.
你一个一个查找下去吧.   不要改得玩家都没有机会选择种族了.
回复

使用道具 举报

 楼主| 发表于 2006-11-5 13:56:29 | 显示全部楼层 来自 中国–重庆–重庆–永川区

回复: Kinsprite大哥请进~

意思是changerace
只要有这类的参数都禁止了?
回复

使用道具 举报

发表于 2006-11-5 14:10:29 | 显示全部楼层 来自 中国–辽宁–沈阳

回复: Kinsprite大哥请进~

当然不只这个关键字, 这函数里面还包含其他函数. 总之, 改别人的东西 或 看别人的东西的时候, 一碰到比较大的, 就麻烦了.
回复

使用道具 举报

 楼主| 发表于 2006-11-5 15:39:22 | 显示全部楼层 来自 中国–重庆–重庆–永川区

回复: Kinsprite大哥请进~

呵呵在你指点下
我已经解决了
但是我还想问个问题~
怎么提高不死族的自暴范围~
还有哪个地穴族好象6级大决没什么效果~能否提升对敌人伤害的效果~
这个是不死的
// ****************************************
// Undead's Suicide Bomber
// ****************************************
public apacheexplode(parm[5]){  // Suicide Bomber
new id = parm[0]
// random explosions
#if ADVANCED_STATS
new WEAPON = CSW_SUICIDE - CSW_WAR3_MIN
iStatsShots[id][WEAPON]++
#endif
new origin[3], origin2[3]
origin[0] = parm[2]
origin[1] = parm[3]
origin[2] = parm[4]
origin2[0] = origin[0] + random_num( -100, 100 )
origin2[1] = origin[1] + random_num( -100, 100 )
origin2[2] = origin[2] + random_num( -50, 50 )

if(!g_mapDisabled)
  Create_TE_EXPLOSION(origin, origin2, g_sFireball, (random_num(0,20) + 20), 12, TE_EXPLFLAG_NONE)
#if MOD == 0
if(!g_mapDisabled)
  Create_TE_Smoke(origin, origin2, g_sSmoke, 60, 10)
#endif
new players[32]
new numberofplayers
get_players(players, numberofplayers)
new i
new targetid
new distancebetween
new targetorigin[3]
new damage
new multiplier
for (i = 0; i < numberofplayers; ++i){
  targetid=players
  get_user_origin(targetid,targetorigin)
  distancebetween=get_distance(origin,targetorigin)
  if (distancebetween < EXPLOSION_RANGE && get_user_team(id)!=get_user_team(targetid) && p_data[targetid][P_ITEM]!=ITEM_NECKLACE && !p_data_b[targetid][PB_WARDENBLINK]){
   multiplier=(EXPLOSION_MAX_DAMAGE*EXPLOSION_MAX_DAMAGE)/EXPLOSION_RANGE
   damage=(EXPLOSION_RANGE-distancebetween)*multiplier
   damage=sqroot(damage)
   if(is_user_alive(targetid))
    WAR3_damage(targetid, id, damage, CSW_SUICIDE, -1)
  }
  if (distancebetween < EXPLOSION_RANGE){
   Create_ScreenShake(targetid, (1<<14), (1<<13), (1<<14))
  }
}
--parm[1]
if (parm[1]>0)
  set_task(0.1,"apacheexplode",TASK_EXPLOSION+id,parm,5)

return PLUGIN_CONTINUE
}
public blastcircles(parm[5]){
if ( endround )
  return 0
// Create Blast Circles
if(g_mapDisabled)
  return PLUGIN_CONTINUE
new origin[3], origin2[3]
origin[0] = parm[2]
origin[1] = parm[3]
origin[2] = parm[4] - 16
origin2[0] = origin[0]
origin2[1] = origin[1]
origin2[2] = origin[2] + EXPLOSION_BLAST_RADIUS
Create_TE_BEAMCYLINDER(origin, origin, origin2, g_sSpriteTexture, 0, 0, 6, 16, 0, 188, 220, 255, 255, 0)
origin2[2] = (origin[2] - EXPLOSION_BLAST_RADIUS) + (EXPLOSION_BLAST_RADIUS / 2 )
Create_TE_BEAMCYLINDER(origin, origin, origin2, g_sSpriteTexture, 0, 0, 6, 16, 0, 188, 220, 255, 255, 0)
return PLUGIN_CONTINUE
}


下面是地穴的
// ****************************************
// Crypt Lord's Locust Swarm
// ****************************************
Ultimate_LocustSwarm(id){
#if ADVANCED_DEBUG
  writeDebugInfo("calllocustfunction",id)
#endif

new parm[11]
parm[7]=id
new players[32], numberofplayers, i, player, possibility[33], count = 0
get_players(players, numberofplayers)
for (i = 0; i < numberofplayers; ++i){
  player=players
  if(get_user_team(player)!=get_user_team(id) && is_user_alive(player) && !p_data_b[player][PB_WARDENBLINK] && p_data[player][P_ITEM]!=ITEM_NECKLACE){
   possibility[count]=player
   count++
  }
}
if(count==0){
  set_hudmessage(178, 14, 41, -1.0, 0.3, 0, 1.0, 5.0, 0.1, 0.2, 5)
  show_hudmessage(id,"%L",id,"NO_VALID_TARGETS_FOUND")
  return PLUGIN_CONTINUE
}
while(parm[6]==0)        // Prevents target from being the server
  parm[6]=possibility[random_num(0,count)]
new origin[3], origin2[3]
get_user_origin(id,origin)
get_user_origin(parm[6],origin2)
parm[0]=origin[0]
parm[1]=origin[1]
parm[2]=origin[2]
Ultimate_Icon(id,ICON_FLASH)
p_data_b[id][PB_ULTIMATEUSED]=true
drawfunnels(parm)
return PLUGIN_CONTINUE
}
public drawfunnels(parm[]){
new MULTIPLIER = 150 // the lower the number the faster it reaches the target
new id = parm[6]
new caster = parm[7]
if(p_data[id][P_ITEM]==ITEM_NECKLACE || p_data_b[id][PB_WARDENBLINK] || !is_user_alive(id) || !p_data_b[id][PB_ISCONNECTED]){
  p_data_b[caster][PB_ULTIMATEUSED]=false
  Ultimate_Icon(caster,ICON_SHOW)
  return PLUGIN_HANDLED
}
new origin[3], funnel[3], name[32], name2[32]
get_user_name(id,name,31)
get_user_name(caster,name2,31)
get_user_origin(id,origin)
funnel[0]=parm[0]   // Origin of the funnel
funnel[1]=parm[1]
funnel[2]=parm[2]

if(!g_mapDisabled)
  Create_TE_LARGEFUNNEL(funnel, g_sSnow, 0)

new xdist = diff(origin[0],funnel[0])
new ydist = diff(origin[1],funnel[1])
new zdist = diff(origin[2],funnel[2])
if(diff(origin[0],(funnel[0]-MULTIPLIER))<xdist)
  parm[0]=funnel[0]-MULTIPLIER
else if(diff(origin[0],(funnel[0]+MULTIPLIER))<xdist)
  parm[0]=funnel[0]+MULTIPLIER
else
  parm[0]=origin[0]
if(diff(origin[1],(funnel[1]-MULTIPLIER))<ydist)
  parm[1]=funnel[1]-MULTIPLIER
else if(diff(origin[1],(funnel[1]+MULTIPLIER))<ydist)
  parm[1]=funnel[1]+MULTIPLIER
else
  parm[1]=origin[1]
if(diff(origin[2],(funnel[2]-MULTIPLIER))<zdist)
  parm[2]=funnel[2]-MULTIPLIER
else if(diff(origin[2],(funnel[2]+MULTIPLIER))<zdist)
  parm[2]=funnel[2]+MULTIPLIER
else
  parm[2]=origin[2]
if(!endround){
  if(!(xdist<50 && ydist<50 && zdist<50)){
   #if MOD == 1
    set_task(0.5,"drawfunnels",caster+TASK_FUNNELS,parm,11)
   #else
    set_task(0.1,"drawfunnels",caster+TASK_FUNNELS,parm,11)
   #endif
  }
  else{
   WAR3_damage(id, caster, 45, CSW_LOCUSTS, -1)
   emit_sound(id,CHAN_STATIC, SOUND_LOCUSTSWARM, 1.0, ATTN_NORM, 0, PITCH_NORM)
   Ultimate_Icon(caster,ICON_HIDE)
   new cooldownparm[2]
   cooldownparm[0]=caster
   
   p_data[caster][P_ULTIMATEDELAY] = iCvar[FT_ULTIMATE_COOLDOWN]
   _Ultimate_Delay(cooldownparm)
  }
}
return PLUGIN_HANDLED
}


请大哥指点~
回复

使用道具 举报

发表于 2006-11-5 17:33:53 | 显示全部楼层 来自 中国–福建–泉州

回复: Kinsprite大哥请进~

你说的有些东西可以在war3FT.cfg里面改的
回复

使用道具 举报

 楼主| 发表于 2006-11-5 18:11:22 | 显示全部楼层 来自 中国–重庆–重庆–永川区

回复: Kinsprite大哥请进~

但是这些东西不能在CFG里面改
回复

使用道具 举报

发表于 2006-11-5 20:12:25 | 显示全部楼层 来自 中国–广西–河池

回复: Kinsprite大哥请进~

地穴族的伤害还不厉害啊?
在我的服里,经常看到很多菜鸟不会买魔免,于是我就换地穴,走一阵放一阵,经常都看不到人在哪里就死了几个。
我都还想降低他的伤害呢。
回复

使用道具 举报

 楼主| 发表于 2006-11-5 20:15:03 | 显示全部楼层 来自 中国–重庆–重庆–永川区

回复: Kinsprite大哥请进~

你用的是什么版本的魔兽我
我用的是Kinsprite发布的2。3。2版本的哪个版本
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

快速回复 返回顶部 返回列表