AdminMod.de https://www.adminmod.de/ |
|
Aus 2 mach 1 String https://www.adminmod.de/viewtopic.php?t=2944 |
Seite 1 von 1 |
Autor: | @vus [ 11.05.2002, 20:12 ] |
Betreff des Beitrags: | Aus 2 mach 1 String |
Ich habe folgendes Problem: Ich möchte gerne einen String "sv_maxspeed" und einen String in einer Variable zusammenfügen z.B.: 1 String: "sv_maxspeed " 2 String: "444" <-- Steht in der Variable: randomspeed Das Ergebnis sollte dann so aussehen: "sv_maxspeed 444" Ich hab das mal so probiert: sspeed = "sv_maxspeed " && randomspeed Der Compiler meint dazu nur: Code: Error [33]: array must be indexed (variable "randomspeed")Tja, ich hab sie aber in der gleichen public mit new randomspeed[MAX_DATA_LENGTH] = ""; Deklariert. Was mache ich falsch? ![]() |
Autor: | [COLA]*Whiskey [ 11.05.2002, 20:16 ] |
Betreff des Beitrags: | |
hab ich aus m timeremaining plugin: new origtimelimit = 0; origtimelimit =getvar("mp_timelimit")*60+2; |
Autor: | @vus [ 11.05.2002, 20:18 ] |
Betreff des Beitrags: | :) |
Ok das ist mir klar aber ich hab ein zweites Problem ich möchte danach den Befehl in der Variable ausführen lassen exec(sspeed); ![]() |
Autor: | [COLA]*Whiskey [ 11.05.2002, 20:22 ] |
Betreff des Beitrags: | |
hmm weis nich aber das müsste so gehn ? Code: public admin_friendlyfire(HLCommand,HLData,HLUserName,UserIndex) { new Command[MAX_COMMAND_LENGTH]; new Data[MAX_DATA_LENGTH]; new User[MAX_NAME_LENGTH]; convert_string(HLCommand,Command,MAX_COMMAND_LENGTH); convert_string(HLData,Data,MAX_DATA_LENGTH); convert_string(HLUserName,User,MAX_NAME_LENGTH); execute_command(User,Command,"mp_friendlyfire",Data); return PLUGIN_HANDLED; } |
Autor: | @vus [ 11.05.2002, 20:25 ] |
Betreff des Beitrags: | |
Ja das hab ich auch schon gesehen jedoch hab ich den UserName nicht, da die public von einem Timer aufgerufen wird! Sonst wär das kein Problem... Trotzdem THX |
Autor: | Biohazard1 [ 11.05.2002, 22:33 ] |
Betreff des Beitrags: | Re: Aus 2 mach 1 String |
Zitat: ... Ich möchte gerne einen String "sv_maxspeed" und einen String in einer Variable zusammenfügen z.B.:
@Steht in der Variable: randomspeed: Da es sich ja wie du sagst um eine Variable handelt, ist 444 kein String sondern ein Integer (Ganzzahl).1 String: "sv_maxspeed " 2 String: "444" <-- Steht in der Variable: randomspeed Das Ergebnis sollte dann so aussehen: "sv_maxspeed 444" Ich hab das mal so probiert: sspeed = "sv_maxspeed " && randomspeed ... Versuche also folgendes: Code: ... new sCommand[MAX_COMMAND_LENGTH]; snprintf(sCommand,MAX_COMMAND_LENGTH,"sv_maxspeed %i", randomspeed); exec(sCommand); ... Zitat: ... Ich möchte gerne einen String "sv_maxspeed" und einen String in einer Variable zusammenfügen ...
Zwei Strings lassen sich nicht in einer Variablen zusammenfügen, aber man kann aus zwei Strings einen neuen String machen.Bio |
Autor: | daRope [ 11.05.2002, 22:34 ] |
Betreff des Beitrags: | Re: Aus 2 mach 1 String |
Zitat: IDas Ergebnis sollte dann so aussehen: "sv_maxspeed 444"
Haallloooo!! Wir programmieren hier in Small, was eine Abart von C ist. Nicht in irgendwelchen anderen Skriptsprachen. Du solltest Dich erst einmal mit der Syntax von Small auseinandersetzen und Deine PHP oder VBS oder was auch immer Kenntnisse ablegen.Ich hab das mal so probiert: sspeed = "sv_maxspeed " && randomspeed Was mache ich falsch? ![]() Code: new var = 444; new strvar[] = "444"; new result[40]; /* Zum Beispiel: */ snprintf( result, sizeof(result), "sv_maxspeed %u", var ); /* Oder, wenn "444" als string vorliegt: */ snprintf( result, sizeof(result), "sv_maxspeed %s", strvar ); /* Alternativ auch: */ strcpy( result, sizeof(result), "sv_maxspeed " ); strcat( result, sizeof(result)-13, strvar ); |
Autor: | @vus [ 12.05.2002, 14:04 ] |
Betreff des Beitrags: | DANKE |
![]() ![]() Was das Scripten mit VB angeht, ich sollte wirklich des mal im Hintergrund lassen! Wenn ich halt Probleme habe, dann hol ich mir die Kenntnisse von VB und versuch sie in Small umzusetzen. Code: new randomspeed0 = 444; new randomspeed[MAX_DATA_LENGTH] = ""; new Text[MAX_TEXT_LENGTH] = ""; numtostr(randomspeed0, randomspeed); strcpy(Text, "sv_maxspeed ", MAX_TEXT_LENGTH); strcat(Text, randomspeed, MAX_TEXT_LENGTH); exec(Text);Ich habs jetzt so gemacht wie daRope, weil ich vorher den Integer sowieso in einen String wandeln muss, dann ist daRopes Lösung vorteilhafter. Bio deine Fassung wär zwar kürzer, aber is ja egal. Es funktioniert halt nur teilweise, weil ich gemerkt hab, dass CSGuard es sowieso wieder zurücksetzt ![]() Naja man hats probiert und ich bin wieder einen Schluck klüger im Thema Adminmod-scripten ![]() |
Autor: | daRope [ 12.05.2002, 15:36 ] |
Betreff des Beitrags: | Re: DANKE |
Zitat: Wenn ich halt Probleme habe, dann hol ich mir die Kenntnisse von VB und versuch sie in Small umzusetzen.
Ich haette hierzu noch einen bissigen Kommentar gehabt. Aber nachdem ich gemerkt habe, dass ich selber mal wieder keine Ahnung von der Syntax der Funktionen habe, lasse ich es lieber. Lass Du es auch am besten Small Probleme in VB zu loesen. ![]() |
Autor: | @vus [ 12.05.2002, 15:38 ] |
Betreff des Beitrags: | |
Ich weis zwar nicht auf was du hinaus willst aber OK ![]() |
Seite 1 von 1 | Alle Zeiten sind UTC+01:00 |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |