AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Need help for this code (https://forums.alliedmods.net/showthread.php?t=89574)

ds811888 04-08-2009 02:03

Need help for this code
 
Code:

for (new i=1; i<= floatround(g_maxplayers/2); i++)
{
// Choose player randomly?
id = fnGetRandomAlive(random_num(1, iPlayersnum))
 
// Turn player into a survivor
humanme(id, 1)
}

warning:
Code:

warning 213: tag mismatch on line 1
Need Help! ++karma

Emp` 04-08-2009 02:36

Re: Need help for this code
 
Show fnGetRandomAlive and humanme

ds811888 04-08-2009 03:02

Re: Need help for this code
 
Code:

humanme(id, survivor)
{
 // Pre user humanize forward
 ExecuteForward(g_fwUserHumanized_pre, g_fwDummyResult, id)
 
 // Reset some vars
 g_zombie[id] = false
 g_nemesis[id] = false
 g_firstzombie[id] = false
 g_nodamage[id] = false
 g_canbuy[id] = true
 g_nvision[id] = false
 g_nvisionenabled[id] = false
 
 // Set human attributes based on the mode
 if (survivor)
 {
  // Survivor
  g_survivor[id] = true
 
  // Get survivor health setting
  static survhealth, survbasehealth
  survhealth = get_pcvar_num(cvar_survhp)
  survbasehealth = get_pcvar_num(cvar_survbasehp)
 
  // Set Health [0 = auto]
  if (survhealth == 0)
  {
  if (survbasehealth == 0)
    fm_set_user_health(id, get_pcvar_num(cvar_humanhp)*fnGetAlive())
  else
    fm_set_user_health(id, survbasehealth*fnGetAlive())
  }
  else
  fm_set_user_health(id, survhealth)
 
  // Set Gravity
  set_pev(id, pev_gravity, get_pcvar_float(cvar_survgravity))
 
  // Get survivor's weapon setting
  static survweapon[32]
  get_pcvar_string(cvar_survweapon, survweapon, sizeof survweapon - 1)
 
  // Strip survivor from weapons and give him his own
  fm_strip_user_weapons(id)
  fm_give_item(id, "weapon_knife")
  fm_give_item(id, survweapon)
 
  // Turn off his flashlight
  turn_off_flashlight(id)
 
  // Give the survivor a bright light
  if (get_pcvar_num(cvar_survaura)) set_pev(id, pev_effects, pev(id, pev_effects) | EF_BRIGHTLIGHT)
 
  // Survivor bots will also need nightvision to see in the dark
  if (is_user_bot(id)) fm_set_bot_nvg(id, 1);
 }
 else
 {
  // Human taking an antidote
 
  // Set health
  fm_set_user_health(id, get_pcvar_num(cvar_humanhp))
 
  // Set gravity, unless frozen
  if (!g_frozen[id]) set_pev(id, pev_gravity, get_pcvar_float(cvar_humangravity))
 
  // Strip off from weapons
  fm_strip_user_weapons(id)
  fm_give_item(id, "weapon_knife")
 
  // Show custom buy menu?
  if (get_pcvar_num(cvar_buycustom))
  set_task(0.4, "show_menu_buy1", id+TASK_SPAWN)
 
  // Antidote sound
  engfunc(EngFunc_EmitSound, id, CHAN_ITEM, sound_antidote[random_num(0, sizeof sound_antidote - 1)], 1.0, ATTN_NORM, 0, PITCH_NORM)
 
  // Get player's name
  static name[32]
  get_user_name(id, name, sizeof name - 1)
 
  // Show Antidote HUD notice
  set_hudmessage(0, 0, 255, HUD_INFECT_X, HUD_INFECT_Y, 0, 0.0, 5.0, 1.0, 1.0, -1)
  ShowSyncHudMsg(0, g_MsgSync, "%L", LANG_PLAYER, "NOTICE_ANTIDOTE", name)
 }
 
 // Remove previous tasks
 remove_task(id+TASK_TEAM)
 remove_task(id+TASK_MODEL)
 remove_task(id+TASK_BLOOD)
 
 // Switch to CT
 if (fm_get_user_team(id) != CS_TEAM_CT) // need to change team?
 {
  fm_set_user_team(id, CS_TEAM_CT)
  fm_user_team_update(id)
 }
 
 #if defined HANDLE_MODELS_ON_SEPARATE_ENT
 
 // Set the right model
 if (g_survivor[id])
  copy(g_playermodel[id], sizeof g_playermodel[] - 1, model_survivor[random_num(0, sizeof model_survivor -1)])
 else
 {
  if (get_pcvar_num(cvar_adminmodelshuman) && get_user_flags(id) & ACCESS_FLAG3)
  copy(g_playermodel[id], sizeof g_playermodel[] - 1, model_admin[random_num(0, sizeof model_admin -1)])
  else
  copy(g_playermodel[id], sizeof g_playermodel[] - 1, model_human[random_num(0, sizeof model_human -1)])
 }
 
 // Set model on player model entity
 fm_set_playermodel_ent(id)
 
 // Set survivor glow / remove glow, unless frozen
 if (g_survivor[id] && get_pcvar_num(cvar_survglow))
  fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 25)
 else if (!g_frozen[id])
  fm_set_rendering(g_ent_playermodel[id])
 
 #else
 
 // Set the right model, after checking that we don't already have it
 static currentmodel[32], already_has_model, i, iRand
 already_has_model = false;
 
 // Get current model and compare it with current one
 fm_get_user_model(id, currentmodel, sizeof currentmodel - 1);
 
 if (g_survivor[id])
 {
  for (i = 0; i < sizeof model_survivor; i++)
  if (equal(model_survivor[i], currentmodel)) already_has_model = true;
 
  if (!already_has_model)
  {
  iRand = random_num(0, sizeof model_survivor -1)
  copy(g_playermodel[id], sizeof g_playermodel[] - 1, model_survivor[iRand])
  #if defined SET_MODELINDEX_OFFSET
  fm_set_user_model_index(id, g_modelindex_survivor[iRand])
  #endif
  }
 }
 else
 {
  if (get_pcvar_num(cvar_adminmodelshuman) && get_user_flags(id) & ACCESS_FLAG3)
  {
  for (i = 0; i < sizeof model_admin; i++)
    if (equal(model_admin[i], currentmodel)) already_has_model = true;
 
  if (!already_has_model)
  {
    iRand = random_num(0, sizeof model_admin -1)
    copy(g_playermodel[id], sizeof g_playermodel[] - 1, model_admin[iRand])
    #if defined SET_MODELINDEX_OFFSET
    fm_set_user_model_index(id, g_modelindex_admin[iRand])
    #endif
  }
  }
  else
  {
  for (i = 0; i < sizeof model_human; i++)
    if (equal(model_human[i], currentmodel)) already_has_model = true;
 
  if (!already_has_model)
  {
    iRand = random_num(0, sizeof model_human -1)
    copy(g_playermodel[id], sizeof g_playermodel[] - 1, model_human[iRand])
    #if defined SET_MODELINDEX_OFFSET
    fm_set_user_model_index(id, g_modelindex_human[iRand])
    #endif
  }
  }
 }
 
 // Need to change the model?
 if (!already_has_model)
 {
  // An additional delay is offset at round start
  // since SVC_BAD is more likely to be triggered there
  if (g_newround)
  set_task(5.0*MODELCHANGE_DELAY, "fm_user_model_update", id+TASK_MODEL)
  else
  fm_user_model_update(id+TASK_MODEL)
 }
 
 // Set survivor glow / remove glow, unless frozen
 if (g_survivor[id] && get_pcvar_num(cvar_survglow))
  fm_set_rendering(id, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 25)
 else if (!g_frozen[id])
  fm_set_rendering(id)
 
 #endif
 
 // Get FOV setting
 static fov
 fov = get_pcvar_num(cvar_zombiefov)
 
 // Restore FOV?
 if (fov != 90 && fov != 0)
 {
  message_begin(MSG_ONE, g_msgSetFOV, _, id)
  write_byte(90) // angle
  message_end()
 }
 
 // Disable nightvision
 if (is_user_bot(id)) fm_set_bot_nvg(id, 0)
 else if (!get_pcvar_num(cvar_cnvg)) set_user_gnvision(id, 0)
 
 // Post user humanize forward
 ExecuteForward(g_fwUserHumanized_post, g_fwDummyResult, id)
 
 // Last Zombie Check
 set_task(0.1, "fnCheckLastZombie")
}

Code:

fnGetRandomAlive(n)
{
 static iAlive, id
 iAlive = 0
 
 for (id = 1; id <= g_maxplayers; id++)
 {
  if (is_user_alive(id))
  iAlive++
 
  if (iAlive == n)
  return id;
 }
 
 return -1;
}


fysiks 04-08-2009 08:04

Re: Need help for this code
 
What is Line 1?

EDIT:
Code:

floatround(g_maxplayers/2.0)
(When I saw your warning in Code tags I assumed it was actual output :|)

xPaw 04-08-2009 08:26

Re: Need help for this code
 
PHP Code:

for (new i=1i<= floatround(g_maxplayers/2); i++)

// Why you even devided by 2, a bit unfair for those guys who joined first.. ->

new iPlayers g_maxplayers 2;

for( new 
1<= iPlayersi++ ) 


ds811888 04-09-2009 02:04

Re: Need help for this code
 
Quote:

Originally Posted by xPaw (Post 800655)
PHP Code:

for (new i=1i<= floatround(g_maxplayers/2); i++)
 
// Why you even devided by 2, a bit unfair for those guys who joined first.. ->
 
new iPlayers g_maxplayers 2;
 
for( new 
1<= iPlayersi++ ) 


nice!! +karma for you :)


All times are GMT -4. The time now is 02:21.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.