AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Coding Help (https://forums.alliedmods.net/showthread.php?t=54558)

-=[SD]=-Turkey 04-28-2007 20:57

Coding Help
 
Ok, I'm trying to get Smokeys HarbuRPJobfair to work with 1.76d... Problem is, when it goes to load, it will say [AMXX] Invalid Plugin... then I tried to compile it with the new one, and the file size changed dramatically form 1,216KB to 16KB, so I tried it anyway, loaded and said running, but nothing registered and I still Can't use /jobmenu...

Code:

#include <amxmodx>
#include <amxmisc>
#include <dbi>
#include <tsfun>
#include <engine>
#include <engine_stocks>
#include <fun>
#include <tsxaddon>
#pragma dynamic 32768
#define ITEMS 800
#define MAXKEYS 32
#define MAXIUMSTR 1024  // String maxium byte size for property acesses, items, items storage
#define ITEMARRAY 64
// Bank ATM #1 and #2 Position
new atmone[3]
new atmtwo[3]
new atmthree[3]
new atmfour[3]
// Jail Cell Positions
new jailone[3]
new jailtwo[3]
new jailthree[3]
new jailfour[3]
new jobfair[3] = { -1469, -2144, -411 } // origin to give out free jobs.
// Uncuff Positions - Default for Mecklenburg_b5
new uncuffareaone[3]
new uncuffareatwo[3]
//new hasclosedoors = 0 // Close MCPD, Gunshop doors at beginng ( 0 = ON, 1 =OFF)
// JobIDS replace with the ones you have in your MySQL database
new mafiajobs[2]
new mcpdjobs[2]
new mcmdjobs[2]
new jobs711[2]
// Registering the database
new Sql:dbc
new Result:result
public plugin_init()
{
 register_plugin("HarbuRP Job Fair 1.0", "1.0", "Smokey485")
 
 // Main Commands
 register_clcmd("say", "say_handle")
 // Menu's
 register_menucmd( register_menuid( "Job Fair" ), 1023, "use_jobmenu")
 register_menucmd( register_menuid( "Job-Fair Page 2" ),1023,"use_jobmenu2")
 
 // CVAR's
 register_cvar( "rp_jobfair", "1")
 // Tasks
 set_task(1.0,"sql_init")
 set_task(10.0,"fix_cvars")
}
public say_handle(id)
{
 new buffer[256], buffer1[33], buffer2[33], buffer3[33], origin[3]
 get_user_origin(id,origin)
 read_argv(1,buffer,255)
 parse(buffer, buffer1, 32, buffer2, 32, buffer3, 32)
 if(equali(buffer1, "/jobmenu"))
 {
  build_jobmenu(id)
  return PLUGIN_HANDLED;
 }
 return PLUGIN_CONTINUE;
}
public build_jobmenu(id)
{
 if(get_cvar_num("rp_jobfair") <= 0)
 {
  client_print(id,print_chat,"[JOB] There is no jobfair currently.")
  return PLUGIN_HANDLED;
 }
 new key = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9)
 new origin[3]
 get_user_origin(id,origin)
 if(get_distance(origin,jobfair) <= 300)
 {
  new menu[1024]
  format(menu,sizeof(menu), "Job Fair")
  add(menu,sizeof(menu), "^n^n ")
  add(menu,sizeof(menu), "1. 7/11 Employee^n ") //jobid 71
  add(menu,sizeof(menu), "2. Diner Waiter^n ") // jobid 85
  add(menu,sizeof(menu), "3. Diner Chef^n ") // jobid 87
  add(menu,sizeof(menu), "4. Bodyguard^n ") // jobid 293
  add(menu,sizeof(menu), "5. Thief^n ") //jobid 294
  add(menu,sizeof(menu), "6. Journalist^n ") // jobid 269
  add(menu,sizeof(menu), "7. Lawyer^n ") // jobid 101
  add(menu,sizeof(menu), "8. Judge^n ") // jobid 103
  add(menu,sizeof(menu), "9. Next Page^n^n 0. Close Menu") // jobid 400(for the mcmd)
  client_print(id,print_chat,"[JOB] You have been given a list of jobs to choose from.")
  show_menu(id,key,menu)
  return PLUGIN_HANDLED;
 }
 client_print(id,print_chat,"[JOB] You must be at the 1337 building desk to use /jobmenu!")
 return PLUGIN_HANDLED;
}
public build_jobmenu2(id)
{
 if(get_cvar_num("rp_jobfair") <= 0)
 {
  client_print(id,print_chat,"[JOB] There is no jobfair currently")
  return PLUGIN_HANDLED;
 }
 new key = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9)
 new origin[3]
 get_user_origin(id,origin)
 if(get_distance(origin,jobfair) <= 300)
 {
  new menu[1024]
  format(menu,sizeof(menu),"Job-Fair Page 2")
  add(menu,sizeof(menu),"^n^n ")
  add(menu,sizeof(menu),"1. Economist^n ") // jobid 274
  add(menu,sizeof(menu),"2. Professor^n ") // jobid 276
  add(menu,sizeof(menu),"3. Reporter^n ") // jobid 279
  add(menu,sizeof(menu),"4. Carpenter^n ") // jobid 285
  add(menu,sizeof(menu),"5. Musician^n ") // jobid 288
  add(menu,sizeof(menu),"6. Electrician^n ") // jobid 290
  add(menu,sizeof(menu),"7. Salesman^n ") // Jobid 292
  add(menu,sizeof(menu),"8. Bar Worker^n ") //jobid 95
  add(menu,sizeof(menu),"9. Bank Worker^n") //JobID 81
  add(menu,sizeof(menu),"^n 0. Close Menu") // Close the user's menu
  show_menu(id,key,menu)
  return PLUGIN_HANDLED;
 }
 client_print(id,print_chat,"[JOB] You must be at the 1337 building desk to use /jobmenu!")
 return PLUGIN_HANDLED;
}
public use_jobmenu(id,key)
{
 switch(key)
 {
  case 0: edit_value(id,"money","jobid","=",71) // 7/11 Employee
  case 1: edit_value(id,"money","jobid","=",85) // diner waiter
  case 2: edit_value(id,"money","jobid","=",87) // diner chef
  case 3: edit_value(id,"money","jobid","=",293) // bodyguard
  case 4: edit_value(id,"money","jobid","=",294) // thief
  case 5: edit_value(id,"money","jobid","=",269) // journalist
  case 6: edit_value(id,"money","jobid","=",101) // lawyer
  case 7: edit_value(id,"money","jobid","=",103) // judge
  case 8: build_jobmenu2(id)
  case 9: client_print(id,print_chat,"[JOB] Menu closed.")
 }
 return PLUGIN_HANDLED;
}
public use_jobmenu2(id,key)
{
 switch(key)
 {
  case 0: edit_value(id,"money","jobid","=",274) // Economist
  case 1: edit_value(id,"money","jobid","=",276) // Professor
  case 2: edit_value(id,"money","jobid","=",279) // Reporter
  case 3: edit_value(id,"money","jobid","=",285) // carpenter
  case 4: edit_value(id,"money","jobid","=",288) // Musician
  case 5: edit_value(id,"money","jobid","=",290) // Electrician
  case 6: edit_value(id,"money","jobid","=",292) // Salesman
  case 7: edit_value(id,"money","jobid","=",95) // Bar Worker
  case 8: edit_value(id,"money","jobid","=",81) // Bank Worker
  case 9: client_print(id,print_chat,"[JOB] Menu closed.")
 }
 return PLUGIN_HANDLED;
}

// Initializing the MySQL database sc delete mysql
public sql_init()
{
 new host[64], username[33], password[32], dbname[32], error[32]
 get_cvar_string("economy_mysql_host",host,64)
 get_cvar_string("economy_mysql_user",username,32)
 get_cvar_string("economy_mysql_pass",password,32)
 get_cvar_string("economy_mysql_db",dbname,32)
 dbc = dbi_connect(host,username,password,dbname,error,32)
 if (dbc == SQL_FAILED)
 {
  server_print("[HarbuRP] Could Not Connect To SQL Database^n")
 }
 else
 {
  server_print("[HarbuRP] Connected To SQL, Have A Nice Day!^n")
 }
}
public fix_cvars()
{
 cvar_to_array("rp_position_atmone",31,atmone,3)
 cvar_to_array("rp_position_atmtwo",31,atmtwo,3)
 cvar_to_array("rp_position_atmthree",31,atmthree,3)
 cvar_to_array("rp_position_atmfour",31,atmfour,3)
 cvar_to_array("rp_position_jailone",31,jailone,3)
 cvar_to_array("rp_position_jailtwo",31,jailtwo,3)
 cvar_to_array("rp_position_jailthree",31,jailthree,3)
 cvar_to_array("rp_position_jailfour",31,jailfour,3)
 cvar_to_array("rp_position_uncuffzone_one",31,uncuffareaone,3)
 cvar_to_array("rp_position_uncuffzone_two",31,uncuffareatwo,3)
 cvar_to_array("rp_jobid_mafia",31,mafiajobs,2)
 cvar_to_array("rp_jobid_mcpd",31,mcpdjobs,2)
 cvar_to_array("rp_jobid_mcmd",31,mcmdjobs,2)
 cvar_to_array("rp_jobid_711",31,jobs711,2)
 //cvar_to_array("rp_jobid_diner",31,g_dinerjobs,2)
 //cvar_to_array("rp_jobid_bank",31,g_bankjobs,2)
 //cvar_to_array("rp_jobid_bar",31,g_barjobs,2)
 //cvar_to_array("rp_position_teacher",31,g_teacherpos,3)
}

/////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////
//////////////////
// ALL STOCKS ///
////////////////
// Check the amount of the specified item
stock get_item_amount(id,itemid,table[],customid[]="")
{
 new authid[32], amount, query[1024]
 if(equali(customid,"")) get_user_authid(id,authid,31)
 else format(authid,31,customid)
 format(query,sizeof(query),"SELECT items FROM %s WHERE steamid='%s'",table,authid)
 result = dbi_query(dbc,"%s",query)
 if(dbi_nextrow(result) > 0)
 {
  new field[MAXIUMSTR]
  new output[ITEMS][32]
  dbi_field(result,1,field,MAXIUMSTR-1)
  new total = explode(output,field,' ')
  for( new i = 0;  i < total; i++ )
  {
  new output2[2][164]
  explode(output2,output[i],'|')
  if(str_to_num(output2[0]) == itemid)
  {
    amount = str_to_num(output2[1])
    return amount
  }
  }
 } else {
 }
 return amount
}
// For Adding/Subtracting Items Quickly
stock set_item_amount(id,func[],itemid,amount,table[],customid[]="")
{
 new authid[32], query[1024], itemfield[MAXIUMSTR]
 if(equali(customid,"")) get_user_authid(id,authid,31)
 else format(authid,31,customid)
 new currentamount = get_item_amount(id,itemid,table,customid)
 format(query,sizeof(query),"SELECT items FROM %s WHERE steamid='%s'",table,authid)
 result = dbi_query(dbc,"%s",query)
 if(dbi_nextrow(result) > 0)
 {
  dbi_field(result,1,itemfield,MAXIUMSTR-1)
  dbi_free_result(result)
  /*
  if(equali(func,"-"))
  {
  new string[1024]
  format(string,sizeof(string)," %i|%i",itemid,currentamount)
  if(containi(itemfield,string) != -1)
  {
    if((currentamount - amount) <= 0)
    {
    replace(itemfield,MAXIUMSTR-1,string,"")
    }
    else
    {
    new newstring[1024]
    format(newstring,sizeof(newstring)," %i|%i",itemid,currentamount-amount)
    replace(itemfield,sizeof(itemfield),string,newstring)
    }
    format(query,sizeof(query),"UPDATE %s SET items='%s' WHERE steamid='%s'",table,itemfield,authid)
    dbi_query(dbc,"%s",query)
  }
  else
  {
    client_print(id,print_chat,"[ItemMod] Error #150 LOOP. Please contact an administrator^n")
    return PLUGIN_HANDLED
  }
  }
  */
  if(equali(func,"-"))
  {
  if(get_item_amount(id,itemid,table,authid) == 0)
  {
    new str[1024]
    format(str,sizeof(str)," %i|%i",itemid,(currentamount -amount))
    add(itemfield,sizeof(itemfield),str)
    format(query,MAXIUMSTR-1,"UPDATE %s SET items='%s' WHERE steamid='%s'",table,itemfield,authid)
    dbi_query(dbc,"%s",query)
  }
  else
  {
    if(currentamount - amount <= 0)
    {
    new string[1024]
    format(string,sizeof(string)," %i|%i",itemid,currentamount)
    replace(itemfield,MAXIUMSTR-1,string,"")
    format(query,MAXIUMSTR-1,"UPDATE %s SET items='%s' WHERE steamid='%s'",table,itemfield,authid)
    dbi_query(dbc,"%s",query)
   
    }
    if(currentamount > 1)
    {
    new newstr[1024], oldstr[1024]
    format(oldstr,sizeof(oldstr)," %i|%i",itemid,currentamount)
    format(newstr,sizeof(newstr)," %i|%i",itemid,(currentamount -amount))
    replace(itemfield,sizeof(itemfield),oldstr,newstr)
    format(query,MAXIUMSTR-1,"UPDATE %s SET items='%s' WHERE steamid='%s'",table,itemfield,authid)
    dbi_query(dbc,"%s",query)
    }
  }
  }
  if(equali(func,"+"))
  {
  if(get_item_amount(id,itemid,table,authid) == 0)
  {
    new str[1024]
    format(str,sizeof(str)," %i|%i",itemid,(currentamount +amount))
    add(itemfield,sizeof(itemfield),str)
    format(query,MAXIUMSTR-1,"UPDATE %s SET items='%s' WHERE steamid='%s'",table,itemfield,authid)
    dbi_query(dbc,"%s",query)
  }
  else
  {
    if(currentamount > 0)
    {
    new newstr[1024], oldstr[1024]
    format(oldstr,sizeof(oldstr)," %i|%i",itemid,currentamount)
    format(newstr,sizeof(newstr)," %i|%i",itemid,(currentamount +amount))
    replace(itemfield,sizeof(itemfield),oldstr,newstr)
    format(query,MAXIUMSTR-1,"UPDATE %s SET items='%s' WHERE steamid='%s'",table,itemfield,authid)
    dbi_query(dbc,"%s",query)
    }
    else
    {
    client_print(id,print_chat,"[ItemMod] Error #200. Please contact an administrator^n")
    return PLUGIN_HANDLED
    }
  }
  }
 } else {
  dbi_free_result(result)
 }
 return PLUGIN_HANDLED
}
// Function for adding/subtracting money from your wallet and Bank balance
public edit_value(id,table[],index[],func[],amount)
{
 if(dbc < SQL_OK) return PLUGIN_HANDLED
 new authid[32], query[256]
 get_user_authid(id,authid,31)
 if(equali(func,"="))
 {
  format(query,255,"UPDATE %s SET %s=%i WHERE steamid='%s'",table,index,amount,authid)
 }
 else
 {
  format(query,255,"UPDATE %s SET %s=%s%s%i WHERE steamid='%s'",table,index,index,func,amount,authid)
 }
 dbi_query(dbc,"%s",query)
 return PLUGIN_HANDLED
}
// Selecting one string from the database
public select_string(id,table[],index[],condition[],equals[],output[])
{
 new query[512]
 format(query,sizeof(query),"SELECT %s FROM %s WHERE %s='%s'",index,table,condition,equals)
 result = dbi_query(dbc,"%s",query)
 if(dbi_nextrow(result) > 0) dbi_field(result,1,output,sizeof(output))
 dbi_free_result(result)
}
// Find user from database, must be registerd a playername
public is_user_database(id)
{
 if(dbc < SQL_OK) return 0
 new authid[32], query[256]
 get_user_authid(id,authid,31)
 format(query,255,"SELECT name FROM money WHERE steamid='%s'",authid)
 result = dbi_query(dbc,"%s",query)
 if(dbi_nextrow(result) > 0)
 {
  dbi_free_result(result)
  return 1
 } else {
 dbi_free_result(result)
 }
 return 0
}
public has_money(id,amount,where[])
{
 new wallet,balance,buffer[64],authid[32];
 get_user_authid(id,authid,31)
 // does the user have enough money?
 if(equali(where,"wallet"))
 {
  select_string(id,"money","wallet","steamid",authid,buffer)
  wallet = str_to_num(buffer)
  if(wallet < amount)
  {
  return 0;
  } else {
  return 1;
  }
 }
 if(equali(where,"balance"))
 {
  select_string(id,"money","balance","steamid",authid,buffer)
  balance = str_to_num(buffer)
  if(balance < amount)
  {
  return 0;
  } else {
  return 1;
  }
 }
 return 0;
}
public get_jobid(id)
{
 new JobID;
 if(is_user_database(id) > 0)
 {
  new query[256],authid[32]
  get_user_authid(id,authid,31)
  format( query, 255, "SELECT JobID FROM money WHERE steamid='%s'", authid)
  result = dbi_query( dbc, "%s", query)
  if( dbi_nextrow( result ) > 0 )
  {
  JobID = dbi_field(result,1)
  }
  dbi_free_result(result)
  return JobID;
 }
 return JobID;
}
// Setting a origin variable ([3]) values from a cvar formated "x y z"
stock cvar_to_array(SzCvar[],length,origin[],dimension = 3)
{
 new output[6][32]
 get_cvar_string(SzCvar,SzCvar,length)
 explode(output,SzCvar,' ')
 for(new i=0;i < dimension;i++) {
 origin[i] = str_to_num(output[i])
 }
 return PLUGIN_HANDLED
}
// Check if origin and NPC are enough close
stock allowed_npc_distance(id,npcid)
{
 new mapname[32],setting,pref[32]
 get_mapname(mapname,31)
 if(containi(mapname,"mecklenburg") != -1)
 {
  setting = 1 //Mecklenburg SettingID
  format(pref,31,"npc")
 } else {
  setting = 2 // Coram_downtown_a1 SettingID
  format(pref,31,"npc2")
 }
 new origin[3], n_origin[3], query[256]
 get_user_origin(id,origin)
 format(query,255,"SELECT x,y,z FROM %s WHERE npcid=%i",pref,npcid)
 result = dbi_query(dbc,"%s",query)
 if(dbi_nextrow(result) > 0)
 {
  n_origin[0] = dbi_field(result,1)
  n_origin[1] = dbi_field(result,2)
  n_origin[2] = dbi_field(result,3)
  dbi_free_result(result)
  if(get_distance(origin,n_origin) <= 25.0) return 1
 } else {
  dbi_free_result(result)
 }
 return 0
}
stock hackmod_use(id,function[],cost,Float:timeout)
{
 if(!has_money(id,cost,"balance"))
 {
  client_print(id,print_chat,"[HACKING] You do not have enough money to %s", function)
  return PLUGIN_HANDLED;
 }
 new target,body,Float:distance,myorigin[3], classname[32]
 distance = get_user_aiming(id,target,body,400)
 get_user_origin(id,myorigin)
 if(target > get_maxplayers())
 {
  entity_get_string(target, EV_SZ_classname, classname, 31)
 }
 if(programming_timeout[id] == 0 && hacking_timeout[id] == 0) // horrible method, it can be glitched and abused.
 {
  edit_value(id,"money","balance","-",cost)
 }
 if(equali(function,"basicprogram"))
 {
  if(programming_timeout[id] >= 1)
  {
  client_print(id,print_chat,"[COMPUTER] You cannot create a basic program at the time.")
  return PLUGIN_HANDLED;
  }
  new rnd;
  if(g_computerskills[id] >= 100 && g_computerskills[id] < 400)
  {
  rnd = random(6)
  } else if(g_computerskills[id] >= 400)
  {
  rnd = random(4)
  } else if(g_computerskills[id] < 100) {
  rnd = random(10)
  }
  new calcpay = random_num(g_computerskills[id],g_computerskills[id] * 2)
  new rnd_upgrade = random(500)
  if(rnd == 1)
  {
  // then have him succeed!
  client_print(id,print_chat,"[COMPUTER] You have created a basic program, earning you $%d.", calcpay)
  programming_timeout[id] = 1
  edit_value(id,"money","balance","+",calcpay)
  set_task(timeout, "no_programtimeout", id)
  }
  if(rnd > 1 || rnd == 0)
  {
  client_print(id,print_chat,"[COMPUTER] You have failed to create a good program, and earn nothing.")
  client_print(id,print_console,"CHOSEN: %i^n", rnd)
  programming_timeout[id] = 1
  set_task(timeout,"no_programtimeout", id)
  }
  if(rnd_upgrade == 250)
  {
  client_print(id,print_chat,"[COMPUTER] BONUS! You have recieved another computer skillpoint!")
  gain_skills(id,"computerskills","+",1)
  g_computerskills[id]++
  }
  return PLUGIN_HANDLED;
 }
 if(equali(function,"advancedprogram"))
 {
  if(programming_timeout[id] == 1)
  {
  client_print(id,print_chat,"[COMPUTER] You cannot create an advanced program at this time.")
  return PLUGIN_HANDLED;
  }
  new rnd;
  if(g_computerskills[id] > 2000)
  {
  rnd = random(5)
  } else if(g_computerskills[id] > 3000)
  {
  rnd = random(3)
  } else if(g_computerskills[id] <= 2000)
  {
  rnd = random(7)
  }
  new calcpay = random_num(g_computerskills[id]*2,g_computerskills[id] * 3)
  new rndupgrade = random(150)
  if(rnd == 1)
  {
  // then have him succeed!
  client_print(id,print_chat,"[COMPUTER] You have created a advanced program, earning you $%d.", calcpay)
  programming_timeout[id] = 1
  edit_value(id,"money","balance","+",calcpay)
  set_task(timeout, "no_programtimeout", id)
  }
  if(rnd > 1 || rnd == 0)
  {
  client_print(id,print_chat,"[COMPUTER] You have failed to create a good program, and earn nothing.")
  client_print(id,print_console,"CHOSEN: %i^n", rnd)
  programming_timeout[id] = 1
  set_task(timeout,"no_programtimeout",id)
  }
  if(rndupgrade == 0)
  {
  client_print(id,print_chat,"[COMPUTER] BONUS! You have received another computer skillpoint!")
  gain_skills(id,"computerskills","+",1)
  g_computerskills[id]++
  }
  return PLUGIN_HANDLED;
 }
 if(equali(function,"hackdoor"))
 {
  if(target <= get_maxplayers())
  {
  client_print(id,print_chat,"[HACKING] You must be looking at a door to hack it!")
  return PLUGIN_HANDLED;
  }
  if(hacking_timeout[id] >= 1)
  {
  client_print(id,print_chat,"[HACKING] You cannot hack so often!")
  return PLUGIN_HANDLED;
  }
  //edit_money(id,amount,where[],func[])
  if(!equali(classname,"func_door"))
  {
  client_print(id,print_chat,"[HACKING] You can only hack sliding doors!")
  return PLUGIN_HANDLED;
  }
  new rndwin
  if(g_computerskills[id] > 190)
  {
  rndwin = random(3)
  } else {
  rndwin = random(8)
  }
  if(rndwin == 0)
  {
  client_print(id,print_chat,"[HACKING] You have successfully hacked the door!")
  force_use(id,target)
  fake_touch(target,id)
  hacking_timeout[id] = 1;
  set_task(timeout, "no_hackertimeout", id)
  }
  if(rndwin > 0)
  {
  client_print(id,print_chat,"[HACKING] You have failed to hack this door, try again later.")
  hacking_timeout[id] = 1;
  set_task(timeout, "no_hackertimeout", id)
  }
 }
 if(equali(function,"atmhack"))
 {
  if(hacking_timeout[id] >= 1)
  {
  client_print(id,print_chat,"[HACKING] You cannot hack so often.")
  return PLUGIN_HANDLED;
  }
  if(get_distance(myorigin,atmone) < 150 || get_distance(myorigin,atmtwo) < 150 || get_distance(myorigin,atmthree) < 150 || get_distance(myorigin,atmfour) < 150)
  {
  new rnd;
  if(g_computerskills[id] > 60)
  {
    rnd = random(8)
  } else if(g_computerskills[id] >= 400)
  {
    rnd = random(6)
  } else if(g_computerskills[id] < 60) {
    rnd = random(25)
  }
  new rndcash = g_computerskills[id]
  if(rnd == 0)
  {
    client_print(id,print_chat,"[HACKING] You have successfully hacked the ATM Machine getting $%d dollars!",rndcash)
    client_cmd(id,"say /me successfully hacks the ATM Machine.")
    edit_value(id,"money","balance","-",cost)
    edit_value(id,"money","balance","+",rndcash)
    hacking_timeout[id] = 1
    set_task(timeout, "no_hackertimeout", id)
    return PLUGIN_HANDLED;
  }
  if(rnd > 0)
  {
    client_cmd(id,"say /me attempts to hack the ATM Machine.")
    client_print(id,print_chat,"[HACKING] You have failed to hack the ATM Machine.")
    edit_value(id,"money","balance","-",cost)
    hacking_timeout[id] = 1
    set_task(timeout, "no_hackertimeout", id)
    return PLUGIN_HANDLED;
  }
  } else {
  client_print(id,print_chat,"[HACKING] You are not close enough to an ATM Machine.")
  }
 }
 if(equali(function,"comhack"))
 {
  if(hacking_timeout[id] == 1)
  {
  client_print(id,print_chat,"[HACKING] You cannot hack so often!")
  return PLUGIN_HANDLED;
  }
  new rnd;
  if(g_computerskills[id] > 50)
  {
  rnd = random(4)
  } else {
  rnd = random(15)
  }
  if(rnd == 0)
  {
  client_print(id,print_chat,"[HACKING] You have successfully hacked the communication radios!")
  comhack[id] = 1;
  set_task(240.0,"no_more_comhack",id)
  client_cmd(id,"say /me hacks into communication radios.")
  hacking_timeout[id] = 1;
  set_task(timeout,"no_hackertimeout",id)
  return PLUGIN_HANDLED;
  } else {
  client_print(id,print_chat,"[HACKING] You have failed to hack the communication radios!")
  client_cmd(id,"say /me attempts to hack the communication radios.")
  hacking_timeout[id] = 1;
  set_task(timeout,"no_hackertimeout",id)
  return PLUGIN_HANDLED;
  }
 }
 client_print(id,print_console,"[HACKING] End of hack.")
 return PLUGIN_HANDLED;
}
stock give_job(id,jobid,message[])
{
 client_print(id,print_chat,message)
 edit_value(id,"money","JobID","=",jobid)
 return PLUGIN_HANDLED;
}
stock job_check(id,name[])
{
 // If a user's job has this word in it, then it returns 1, otherwise, 0.
 new JobID = get_jobid(id)
 new JobName[32]
 new query[256]
 format(query,255,"SELECT JobName from jobs WHERE JobID=%d",JobID)
 result = dbi_query(dbc,query)
 if(dbi_nextrow(result) > 0)
 {
  dbi_field(result,1,JobName,31)
  dbi_free_result(result)
 } else {
  dbi_free_result(result)
 }
 if(containi(JobName,name) != -1)
 {
  return 1;
 } else {
  return 0;
 }
 return 1;
}
stock edit_money(id,amount,where[],func[])
{
 edit_value(id,"money",where,func,amount)
 return PLUGIN_HANDLED;
}
// Thanks for Ben 'Promethus' for this script
stock explode( output[][], input[], delimiter)
{
 new nIdx = 0
 new iStringSize
 while ( input[iStringSize] )
  iStringSize++
 new nLen = (1 + copyc( output[nIdx], iStringSize-1, input, delimiter ))
 while( nLen < strlen(input) )
  nLen += (1 + copyc( output[++nIdx], iStringSize-1, input[nLen], delimiter ))
 return nIdx + 1
}

Could someone please analyze this and tell me what I need to do, and change anything that could be making it not work, re arrange it whatever... BUT UNDER NO CIRCUMSTANCES REMOVE SMOKEY AS THE AUTHOR OR TAKE CREDIT FOR IT IN ANYWAY - I DID NOT MAKE THIS NEITHER DID YOU!!! SMOKEY DID!!!

vvg125 04-28-2007 21:04

Re: Coding Help
 
You should post this in scripting help.

-=[SD]=-Turkey 04-28-2007 21:07

Re: Coding Help
 
Can someone please move it to Scripting?


All times are GMT -4. The time now is 06:37.

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