Jump to content

[Tutorial] Simple but Effective Tips


Deceiver

Recommended Posts

 

I don't like declaring multiple variables on the same line. It tires the eye imo.
Because of completion OCD I occasionally will use a "this" where it's not necessary, or sometimes I'll just do it to improve readability.
I will sometimes prefer snake_case over headlessCamelCase when the latter looks awkward.
 
But yeah.
 
Conventions.

 

he decompiled my script and thinks it came out the same as it went in

 

long startTime, timeRun

feels.png

 

i don't actually know why i had timerun in there, it was never used lol

 

this is a roast thread tbh

hardly. you just decompiled a quick script I made and didn't even do it right.

i don't initialize everything every single line, and using "this.npcs" and similiar is something i've never done before

http://osbot.org/forum/topic/91327-sentychompys-chompy-bird-killer/?p=1013049

 

since you seem so interested in responding to my statement of you not deserving the scripter rank, you should do it directly, not with a half-assed thread including failed decompiling and bullshit

Link to comment
Share on other sites

he decompiled my script and thinks it came out the same as it went in

i don't actually know why i had timerun in there, it was never used lol

hardly. you just decompiled a quick script I made and didn't even do it right.

i don't initialize everything every single line, and using "this.npcs" and similiar is something i've never done before

http://osbot.org/forum/topic/91327-sentychompys-chompy-bird-killer/?p=1013049

since you seem so interested in responding to my statement of you not deserving the scripter rank, you should do it directly, not with a half-assed thread including failed decompiling and bullshit

No one cares now. Both of you end the banter here in this thread. It's pointless fighting over something so stupid. It is just a rank. Period.

Link to comment
Share on other sites

he decompiled my script and thinks it came out the same as it went in

 

i don't actually know why i had timerun in there, it was never used lol

 

hardly. you just decompiled a quick script I made and didn't even do it right.

i don't initialize everything every single line, and using "this.npcs" and similiar is something i've never done before

http://osbot.org/forum/topic/91327-sentychompys-chompy-bird-killer/?p=1013049

 

since you seem so interested in responding to my statement of you not deserving the scripter rank, you should do it directly, not with a half-assed thread including failed decompiling and bullshit

 

no shit u didnt do it right you idiot fuck. theres no point in calling me a shit scripter when you fuck up on your own shit emote32342.png learn your place you fucking sheep.

 

you should do it directly, not with a half-assed thread including failed decompiling and bullshit

 

this made me laugh a bit bc the first one was hidden :sarcasm:

Link to comment
Share on other sites

The real problem with those variables is that most of them are obsolete. Start xp doesn't need to be stored because all xp gain calculations can be accessed through ExperienceTracker. NPCs and Widgets shouldn't be stored globally because they are most likely going to need to be refreshed every time the method that uses them is called, same with run time.

Let us all bow our heads and pray that he at least uses OOP.

/roast

  • Like 1
Link to comment
Share on other sites

The real problem with those variables is that most of them are obsolete. Start xp doesn't need to be stored because all xp gain calculations can be accessed through ExperienceTracker. NPCs and Widgets shouldn't be stored globally because they are most likely going to need to be refreshed every time the method that uses them is called, same with run time.

Let us all bow our heads and pray that he at least uses OOP.

/roast

 

what is oop

Link to comment
Share on other sites

 

  • Casting and 'this'
    • Bad Example:
  •  this.wait = this.widgets.getWidgetContainingText(new String[] { "Hey, JalyYt, you were in a cave only a moment ago." });
            this.cont = this.widgets.getWidgetContainingText(new String[] { "Well done in the cave, here take TokKul as reward." });
            this.entrance = (RS2Object)this.objects.closest(new String[] { "Cave entrance" });
            this.guard = (NPC)this.npcs.closest(new String[] { "TzHaar-Mej-Jal" });
            this.tzkih = (NPC)this.npcs.closest(new String[] { "Tz-Kih" });
            this.tzkek = (NPC)this.npcs.closest(new String[] { "Tz-Kek" });
            this.tokxil = (NPC)this.npcs.closest(new String[] { "Tok-Xil" });
            this.ytmejkot = (NPC)this.npcs.closest(new String[] { "Yt-MejKot" });
            this.ketzek = (NPC)this.npcs.closest(new String[] { "Ket-Zek" });
            this.ythurkot = (NPC)this.npcs.closest(new String[] { "Yt-HurKot" });
    

    In this example, the variable names are the same ones we defined earlier, therefore, we do not need this. As well, we do not need the absurd and gross looking String array and casting. 

 

  • Good Example:
  •  wait = widgets.getWidgetContainingText("Hey, JalyYt, you were in a cave only a moment ago.");
            entrance = objects.closest("Cave entrance");
            guard = npcs.closest("TzHaar-Mej-Jal" );
            tzkih = npcs.closest("Tz-Kih" );
           

 

 

Agreed, people over use this everywhere without proper understanding I think this will clear up some peoples misconceptions. 

  • Like 1
Link to comment
Share on other sites

 

    • Bad Example:
    • public RS2Object entrance;
          public RS2Widget wait;
          public RS2Widget cont;
          public NPC guard;
          public NPC tzkih;
          public NPC tzkek;
          public NPC tokxil;
          public NPC ytmejkot;
          public NPC ketzek;
          public NPC jad;
          public NPC ythurkot;
          String state;
          int startHPExp;
          int startATTExp;
          int startDEFExp;
          int startSTRExp;
          int completed;
          long startTime;
          long runTime;
      

      This is an example of bad code! Most of us have probably defined our variables like this before and thought it is correct. Though it is correct and will work, it is not the most efficient and clean way to define them.

 

  • Good Example:
  • int profit, age;
    int a = 4, b = 6;
    long startTime, timeRun
    RS2Object guard, target, chicken;
    RS2Widget selectX, makeAll;
    ..... so forth
    

    Fewer lines of your code, all your variables are still there and it looks neater and easier on the eyes.

 

 

I personally find the first example a lot cleaner and easier on the eyes.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...