如何实现barrel功能?

社区服务
高级搜索
猴岛论坛CSGO反恐精英CS作弊器交流讨论如何实现barrel功能?
发帖 回复
倒序阅读 最近浏览的帖子最近浏览的版块
4个回复

如何实现barrel功能?

楼层直达
luckydog51

ZxID:1251430

等级: 新兵
举报 只看楼主 使用道具 楼主   发表于: 2007-10-28 0
一直想做个温柔作弊器,让t和CT的木仓口显示出不同颜色的瞄准线,于是加了barrel功能代码,编译也没有错,可就是不显示瞄准线,不知道是哪里的问题。会的朋友,请帮忙解答一下,多谢!
作弊辅导员_h

ZxID:1019634

等级: 元老
定做作弊器
举报 只看该作者 沙发   发表于: 2007-10-28 0
static void playerRenderOptions(cl_entity_s* ent)
{
    ColorEntry* color = PlayerColor(ent->index);

    if(cvar.glow)//&& aim)
    {
        ent->curstate.renderamt = cvar.glow;
        ent->curstate.rendercolor.r = color->r;
        ent->curstate.rendercolor.b = color->b;
        ent->curstate.rendercolor.g = color->g;
        ent->curstate.renderfx = kRenderFxGlowShell;
    }
   
    if (cvar.barrel)//&& aim)
    {
        vec3_t vecEnd, up, right, forward, EntViewOrg;
        VectorCopy(ent->origin,EntViewOrg);
       
        if (ent->curstate.usehull) { EntViewOrg[2] += 12; }
        else                      { EntViewOrg[2] += 17; }
       
        gEngfuncs.pfnAngleVectors (ent->angles, forward, right, up);
        forward[2] = -forward[2];
        vec3_t vecBegin(EntViewOrg);
       
        vecBegin[0]+=forward[0]*22;
        vecBegin[1]+=forward[1]*22;
        vecBegin[2]+=forward[2]*22;
       
        vecEnd = vecBegin + forward * cvar.barrel;
        drawLine(vecBegin,vecEnd,color);
    }
   
    if (cvar.spiked)//&& aim)
    {
        vec3_t vecEnd, up, right, forward, EntViewOrg;
        VectorCopy(ent->origin,EntViewOrg);
       
        gEngfuncs.pfnAngleVectors (ent->angles, forward, right, up);
        forward[2] = -forward[2];
        vec3_t vecBegin(EntViewOrg);
        vecEnd  = vecBegin + forward * cvar.spiked;
        vecBegin = vecBegin - forward * cvar.spiked;
        drawLine(vecBegin,vecEnd,color);

        vecBegin = EntViewOrg;
        vecEnd  = vecBegin + right *cvar.spiked;
        vecBegin = vecBegin - right *cvar.spiked;
        drawLine(vecBegin,vecEnd,color);
       
        vecBegin = EntViewOrg;
        vecEnd  = vecBegin + up * cvar.spiked;
        vecBegin = vecBegin - up *cvar.spiked;
        drawLine(vecBegin,vecEnd,color);
    }
}
密码被盗,请联系cscheat取回
作弊辅导员_h

ZxID:1019634

等级: 元老
定做作弊器
举报 只看该作者 板凳   发表于: 2007-10-28 0
和Hud 、路线 等一样,调用的是CS的动态帖图文件 xxx.spr
如果你在代码里找不到相关的 ("sprites/laserbeam.spr")  那说明你代码不完整。
另外barrel 的长度也不能太短, 太短了就看不到了,相当于没有。
其它作弊器代码有这个功能的,搜索client.cpp里所有的spr相关的部分,对照你的,把缺少的都加进去应该不会再错啦。
密码被盗,请联系cscheat取回
luckydog51

ZxID:1251430

等级: 新兵
举报 只看该作者 地板   发表于: 2007-10-28 0
谢谢答复,回头再试试
ghost-dd

ZxID:1016940

等级: 准尉

举报 只看该作者 4楼  发表于: 2007-10-28 0
温柔作弊显示敌方awp超长瞄准线,绝对好用

cvar.h
  int awpline;

cvar.cpp
  REGISTER_CVAR_INT (awpline ,0);

client.cpp
int GetTargetWeaponID(int ax)
{
  if(ax==-1)
    return -1;
  else
    return burstInfo.getWeaponID(gGetWeaponName(vPlayers[ax].getEnt()->curstate.weaponmodel));
}
bool TargeHaveDangeWeapon(int ax)
{
  int weaponid=GetTargetWeaponID(ax);
  if(weaponid==WEAPON_AWP)
    return true;
  else
    return false;
}
static void playerRenderOptions(cl_entity_s* ent)
{
  ColorEntry* color = PlayerColor(ent->index);
  if (!cvar.opencheat && isEnemy(ent->index) && TargeHaveDangeWeapon(ent->index))
  {
    if( (cvar.awpline == 1 &&
      ent->curstate.gaitsequence != 3 &&
      ent->curstate.gaitsequence != 4 &&
      ent->curstate.gaitsequence != 5 &&
      ent->curstate.gaitsequence != 6 ) ||
      cvar.awpline == 2
      )
    {
      vec3_t vecEnd, up, right, forward, EntViewOrg;
      VectorCopy(ent->origin,EntViewOrg);
     
      if (ent->curstate.usehull == 0)
        EntViewOrg[2] += 17;
      else if (ent->curstate.usehull == 1)
        EntViewOrg[2] += 12;
     
      gEngfuncs.pfnAngleVectors (ent->angles, forward, right, up);
      forward[2] = -forward[2];
      vec3_t vecBegin(EntViewOrg);
     
      vecBegin[0]+=forward[0]*22;
      vecBegin[1]+=forward[1]*22;
      vecBegin[2]+=forward[2]*22;
     
      vecEnd = vecBegin + forward * 99999;
      int beamindex = gEngfuncs.pEventAPI->EV_FindModelIndex("sprites/laserbeam.spr");
      gEngfuncs.pEfxAPI->R_BeamPoints(vecBegin,vecEnd,beamindex,0.001f,0.9f,0,  32,2,0,10,color->fr,color->fg,color->fb);

    }
  }
}

awpline 0  关闭瞄准线
awpline 1  敌方AWP静止时,显示瞄准线(温柔模式很好用)
awpline 2  敌方AWP静止和走动时,都显示瞄准线 (AWP多了,绝对花眼)

注意:nosky必须为0,否则看不到瞄准线
[ 此贴被ghost-dd在2007-10-28 23:02重新编辑 ]
« 返回列表
发帖 回复