Register for your free account! | Forgot your password?

Go Back   elitepvpers > Other Online Games > Diablo 2 > Diablo 2 Programming
You last visited: Today at 05:22

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



mehrere If Anweisungen richtig kombinieren (Javascript)

Discussion on mehrere If Anweisungen richtig kombinieren (Javascript) within the Diablo 2 Programming forum part of the Diablo 2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2010
Posts: 7
Received Thanks: 2
mehrere If Anweisungen richtig kombinieren (Javascript)

ich suche nach einer Vereinfachung folgendes Codes

Code:
if(type == 4 && msg.indexOf(_exper + "(" + _exper_acc + ") hat unsere Welt verlassen.") != -1)
{
  ExitGame();
}
if(type == 4 && msg.indexOf(_exper + "(" + _exper_acc + ") left our world.") != -1)
{
  ExitGame();
}
if(type == 4 && msg.indexOf(_leader + "(" + _leader_acc + ") hat unsere Welt verlassen.") != -1)
{
  ExitGame();
}
if(type == 4 && msg.indexOf(_leader + "(" + _leader_acc + ") left our world.") != -1)
{
  ExitGame();
}

hier ist mir die if+Bedingungen Zeile zu lang, mich stört es wenn ich im Editor immer nach rechts scrollen muss
Code:
if(Bedingung1 || Bedingung2 || usw.) //diese Zeile wird extrem lang
{
  ExitGame();
}
wie wird ein Zeilenumbruch gemacht und dabei mitgeteilt das es keinen zeilenumbruch gibt, sondern nur die Bedingung auf mehrere Zeilen verteilt anstatt einer.
probiert hab ich es noch nicht, mit "/" ?
Code:
if(Bedingung1 || /
   Bedingung2 || /
   Bedingung3 )
{
  ExitGame();
}
vielleicht gibt es noch andere Tricks
m4758406 is offline  
Old 07/29/2011, 10:55   #2
 
elite*gold: 0
Join Date: Mar 2010
Posts: 539
Received Thanks: 418
Du kannst einfach ein paar Sachen zusammenfassen wie z.B. _exper und _leader und die Leavemessages!
Weiters würde ich nicht so viele Schlagworte verwenden, ist nicht notwendig:
Code:
if(type == 4 && [COLOR="Blue"](msg.indexOf(_exper) != -1 || msg.indexOf(_leader) != -1)[/COLOR] && [COLOR="Red"](msg.indexOf("left") != -1 || msg.indexOf("verlassen") != -1)[/COLOR])
{
	ExitGame();
}
Wenn dir das jetzt noch zu lange ist, hast du einen zu kleinen Bildschirm!

Wegen Zeilenumbrüche:
In Javascript kannst du einfach einen Zeilenumbruch an den Stellen machen, wo ein Leerzeichen kommen kann. Brauchst keine speziellen Zeichen einfügen.
Code:
if(type == 4 &&
   (msg.indexOf(_exper) != -1 || msg.indexOf(_leader) != -1) &&
   (msg.indexOf("left") != -1 || msg.indexOf("verlassen") != -1))
{
	ExitGame();
}
Würde das gleiche machen, wie oben, in dem Fall ist keine bessere Leserlichkeit gegeben, da der Ausdruck generell schon ziemlch kurz gehalten wurde.

Was vielleicht auch noch ganz gut wäre, wenn du das Timeout noch einbaust:
Code:
if(type == 4 && (msg.indexOf(_exper) != -1 || msg.indexOf(_leader) != -1) && (msg.indexOf("left") != -1 || msg.indexOf("verlassen") != -1[COLOR="Red"] || msg.toLowerCase().indexOf("timeout") != -1[/COLOR]))
{
	ExitGame();
}
TheCrazy11 is offline  
Thanks
2 Users
Old 08/06/2011, 10:02   #3
 
elite*gold: 0
Join Date: Oct 2010
Posts: 7
Received Thanks: 2
Danke hat mir sehr geholfen nur ich verstehe noch nicht wofür das gehört
Quote:
msg.toLowerCase().indexOf("timeout") != -1
Wenn der Char Timeout hat das Script beendet wird weil sonst würde es weiter laufen?

Woher weiss ich das "type == 4" zu dem "msg.toLowerCase" dazugehört?

Vielen Dank!
m4758406 is offline  
Old 08/06/2011, 15:44   #4
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,653
Der Parameter type beschreibt eigentlich nur, um welche Art von Nachricht es sich handelt. Du kannst das ein stückweit mit den unterschiedlichen Farben verbinden, jedenfalls hat dieser Parameter im Falle von Join/Leave Notifications immer den Wert 4.

Die genannte Bedingung wird dann wahr, wenn es sich um eine Nachricht in goldener Schrift handelt, die den Begriff "timeout" enthält, mit anderen Worten also gerade der Nachricht:
Code:
"CharXYZ was dropped due to timeout."
LG
Muddy
Muddy Waters is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
PSC. | 2x 10€ Psc KOMBINIEREN ?
06/08/2011 - Off Topic - 3 Replies
Hallo Wollte mir bei Steam für 19,99 COD MW 2 Holen. Wollte aber keine 25€ holen. Wie Kann ich AUs 2 mal 10 € PaySafeCard`s eine für 20 Machen. Oder wie kann ich hintereinander bezahlen jmd ne ahnung :D
Fix Dein Ping Mit Mongo's Anweisungen :D
09/07/2010 - S4 League - 11 Replies
Also bei mir laggt das Spiel wie die sau. Wenn ich jemanden erschieße und der keine Leben mehr hat und ihc weiter schieße läuft er immernoch gesund weiter. Oder manchmal sterbe ich obwohl mit keinerattackiert. Ebenfalls kann ich bei Touchdown die Kugel net aufheben. Ich stelle mich an die stelle Hüpfe die ganze zeit rum und bekomme die net. Dann kommt en gegner angelaufen und bekommt die ohne Probleme. Genau dieses Problem hab ich und ein GM hatt mir tipps gegeben die euch vllt...



All times are GMT +1. The time now is 05:22.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.