Avatar billede EIHP Juniormester
22. april 2003 - 15:38 Der er 13 kommentarer og
1 løsning

Fejl i min kode (C/C++)

Min kode ser sådan her ud..

/* AMX Mod script.
*
* (c) Copyright 2002, OLO
* This file is provided as is (no warranties).
*
* If you have no need for additional informations from
* addons/amx/conmotd.txt file then delete it.
*/
#include <amxmod>
/* Some settings
*/
#define SHOW_MODS            1
#define READ_FROM_FILE    1
#if READ_FROM_FILE == 1
new motdfromfile[] = "addons/amx/conmotd.txt"
#endif
/* End of settings */
public plugin_init() {
register_plugin("Welcome Message","0.9.3","default")
return PLUGIN_CONTINUE
}
public client_connect(id) {
new name[32], authid[32], ip[32], hostname[64]
new nextmap[32], time[64], mapname[32]
get_cvar_string("hostname",hostname,63)
get_user_name(id,name,31)
get_user_authid(id,authid,31)
get_user_ip(id,ip,31)
get_time("Today is %A %B %d, %Y - %H:%M:%S",time,63)
get_mapname(mapname,31)
get_cvar_string("amx_nextmap",nextmap,31)
client_cmd(id, "echo ;echo ======================================================================")

if (name=="_-CA-_Chinken_Dancer2k") {
client_cmd(id, "echo ^"  Hey Mester, godt at se dig.^"",hostname)
}
else if (name=="SC|TQZEN*") {
client_cmd(id, "echo ^"  Hey Skat, har du det godt?^"",hostname)
}
else {
client_cmd(id, "echo ^"  Hey %s, og velkommen til %s^"",name,hostname)
}

client_cmd(id, "echo ^"  %s^"",time)
client_cmd(id, "echo ^"  Du spiller fra: %s med wonid: %s^"",ip,authid)
client_cmd(id, "echo ^"  Spillere pA serveren:  %d/%d^"",get_playersnum(),get_maxplayers())
client_cmd(id, "echo ^"  Map: %s og det nAste map vil blive: %s^"",mapname,nextmap)
// Time limit and time remaining
new Float:mp_timelimit = get_cvar_float("mp_timelimit")
if (mp_timelimit){
new timeleft = get_timeleft()
if (timeleft > 0)
client_cmd(id, "echo ^"  Tid tilbage %d:%02d af %.0f minutter^"",    timeleft / 60, timeleft % 60,mp_timelimit)
}
else{
client_cmd(id, "echo ^"  There is no time limit^"")
}
// C4 and FF
client_cmd(id, "echo ^"  Friendly fire er %s^"", get_cvar_float("mp_friendlyfire") ? "ON" : "OFF")
client_cmd(id, "echo ^"  C4 timer er sat til %.0f sec.^"",get_cvar_float("mp_c4timer"))
// Info. about priviliges and amx_help command
new flags = get_user_flags(id)
if (flags){
new sflags[32]
get_flags(flags,sflags,31)
client_cmd(id, "echo ;echo ^"  Din adgang er %s %s immunity^"",
sflags,(flags&ADMIN_IMMUNITY)?"med":"uden")
}
else {
client_cmd(id, "echo ;echo ^"  Du er ikke admin^"")
}
// Server Mods
#if SHOW_MODS == 1
new mod_ver[32]
client_cmd(id, "echo ;echo ^"  Server mods:^"")
get_cvar_string("amx_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * AMX Mod %s^"",mod_ver)
get_cvar_string("statsme_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * StatsMe %s^"",mod_ver)
get_cvar_string("clanmod_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * ClanMod %s^"",mod_ver)
get_cvar_string("admin_mod_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * AdminMod %s^"",mod_ver)
get_cvar_string("chicken_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * Chicken %s^"",mod_ver)
get_cvar_string("csguard_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * CSGuard %s^"",mod_ver)
get_cvar_string("hlguard_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * HLGuard %s^"",mod_ver)
get_cvar_string("plbot_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * PLBot %s^"",mod_ver)
get_cvar_string("booster_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * HL-Booster %s^"",mod_ver)
get_cvar_string("axn_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * AXN %s^"",mod_ver)
get_cvar_string("bmx_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * BMX %s^"",mod_ver)
get_cvar_string("atac_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^"  * ATAC %s^"",mod_ver)
#endif
// Info. from custom file
#if READ_FROM_FILE == 1
if (file_exists(motdfromfile)) {
new message[192], len, line = 0
client_cmd(id, "echo --------------------------------------------------------------------------------------------------")
while(read_file(motdfromfile,line++,message,191,len))
client_cmd(id,"echo ^"%s^"",message)
}
#endif
client_cmd(id, "echo ======================================================================")
return PLUGIN_CONTINUE
}

Jeg bruger den til min CS server.. Og jeg for en fejl meddelse ved

if (name=="_-CA-_Chinken_Dancer2k") {
client_cmd(id, "echo ^"  Hey Mester, godt at se dig.^"",hostname)
}
else if (name=="SC|TQZEN*") {
client_cmd(id, "echo ^"  Hey Skat, har du det godt?^"",hostname)
}
else {
client_cmd(id, "echo ^"  Hey %s, og velkommen til %s^"",name,hostname)
}

Hvad er der galt med det?
Avatar billede jespernaur Nybegynder
22. april 2003 - 15:49 #1
Hvilken fejl får du? Vis hele fejludskriften.
Avatar billede EIHP Juniormester
22. april 2003 - 20:11 #2
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

weapon_restriction.sma(66) : warning 217: loose indentation

1 Warning.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

Done.
Small compiler 2.1.0        Copyright (c) 1997-2002, ITB CompuPhase

welcomemsg2.sma(34) : error 033: array must be indexed (variable "name")
welcomemsg2.sma(37) : error 033: array must be indexed (variable "name")

2 Errors.
Avatar billede jespernaur Nybegynder
22. april 2003 - 23:21 #3
I C skal du sammenligne strenge som følger:

if (strcmp(name,"_-CA-_Chinken_Dancer2k") == 0) {
client_cmd(id, "echo ^"  Hey Mester, godt at se dig.^"",hostname)
}
else if ((strcmp(name,"SC") == 0) ||
        (strncmp(name,"TQZEN",5) == 0)) {
client_cmd(id, "echo ^"  Hey Skat, har du det godt?^"",hostname)
}

hvor jeg går ud fra, at du med

  if (name=="SC|TQZEN*")

mener ENTEN at name = "SC", ELLER at de første 5 tegn af name = "TQZEN"
Avatar billede EIHP Juniormester
23. april 2003 - 12:46 #4
Nej.. SC|TQZEN* Er min kærestes nickname..
Avatar billede jespernaur Nybegynder
23. april 2003 - 14:10 #5
Det forenkler faktisk sagen en smule:

if (strcmp(name,"_-CA-_Chinken_Dancer2k") == 0) {
  client_cmd(id, "echo ^"  Hey Mester, godt at se dig.^"",hostname)
}
else if (strcmp(name,"SC|TQZEN*") == 0) {
  client_cmd(id, "echo ^"  Hey Skat, har du det godt?^"",hostname)
}
Avatar billede EIHP Juniormester
23. april 2003 - 23:30 #6
Jeg for en ny fejlmeddelse nu...

welcomemsg2.sma(34) : undefined symbol "strcmp"
welcomemsg2.sma(37) : undefined symbol "strcmp"
Avatar billede jespernaur Nybegynder
23. april 2003 - 23:41 #7
Prøv at inkludere string.h lige efter amxmod, altså

#include <amxmod>
#include <string.h>
Avatar billede EIHP Juniormester
24. april 2003 - 00:10 #8
Hvordan mener du?
Avatar billede EIHP Juniormester
24. april 2003 - 00:13 #9
Nu for jeg en ny fejl :S

welcomemsg2.sma(10) : fatal error 100: cannot read from file: "string.h"
Avatar billede jespernaur Nybegynder
24. april 2003 - 09:42 #10
Hvad er det overhovedet for en C-compiler du har? Det jeg har angivet kan man i alle de C-compilere, jeg kender til.
Avatar billede EIHP Juniormester
24. april 2003 - 13:53 #11
Har du msn, så kan jeg sende programmet og welcomemsg2.sma til dig...
Avatar billede jespernaur Nybegynder
24. april 2003 - 14:40 #12
Jeg har ikke mulighed for at udvikle i det samme miljø som dig - du kommer til at læse manualer for at finde ud af, hvilke strenghåndterings-funktioner du kan anvende. Hvis det er andre end dem jeg har foreslået, kommer du nok selv til at finde ud af det.
Avatar billede EIHP Juniormester
24. april 2003 - 17:47 #13
Okay... Tak for hjælpen så
Avatar billede zeiox Nybegynder
16. maj 2005 - 11:43 #14
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester