• If you need help or want to discuss things, you now can also join us on our Discord Server!
  • A first preview of the unlimited version of SinusBot can be found in the Upcoming Changes thread. A version for Windows will follow, but we don't have a release date, yet.

DE Erster test und versuch es zu verstehen

chris1992

Active Member
Hi ich bin ganz neu in sachen javascript nun mal ein erster versuch von mir und er ist bestimmt falsch aber wenn ihr den sinn darin versteht und dann eventuell mir alle fehler sagen könnt wäre ich super glücklich und ein bischen weiter im verständnis vom scripten.

registerPlugin({

name: 'HotSlogs',
version: '0.1',
description: '',
author: '',
engines: '>= 0.9.16',

vars: [
]




//Require module variables
var event = require('event');
var engine = require('engine');
var backend = require('backend');

var nickname = ev.client.name();
var nicknameform = nickname.replace(/#/g , "_");
var battletag = nicknameform.split(" ");
var btag = battletag[0];

var httplogs = {
method: "GET",
headers: "Content-type: application/json",
timeout: 30,
url: "https://api.hotslogs.com/Public/Players/2/" + btag

sinusbot.http(httplogs, function (error, response)) {
if (response.statusCode !== 200) {
console.log("Could not retrieve info for " + ip + " HTTP_ERROR: " + error);
return false;
}
else {
var hlrank = httplogs.LeaderboardRankings[1].LeagueRank;
var tlrank = httplogs.LeaderboardRankings[2].LeagueRank;
if (hlrank != "null" || tlrank != "null") {
if (hlrank >= tlrank){
engine.log(nickname + "Heroleague rank ist " + hlrank);
}
else {
engine.log(nickname + "Teamleague rank ist " + tlrank);
}
}
}
}
}});
 

irgendwr

no longer active, "retired" staff member
is awesome!
V.I.P.
is uber awesome!
Contributor
Insider
Ergibt von der syntax her wenig sinn, weil du da was gelöscht hast:
zwischen vars:[] und var ... fehlt "}, function (sinusbot, config) {", siehe example

Fang vielleicht mal von vorne an und geh von dem basic example script aus und füg dann nach und nach was hinzu.

Und versuch nicht nur Sachen zu kopieren sondern auch zu verstehen und dann entsprechend zu formatieren, weil so sieht der code echt nicht so schön aus und man sieht nicht sofort welche klammer zu welcher gehört wodurch dir schneller Fehler passieren.
(such mal nach "javascript formatter" oder "javascript beautifier" wenn du's nicht alleine hinbekommst)

beim http teil sind auch syntaxfehler, guck dir dazu auch mal das example an.
 

Multivitamin

Well-Known Member
Tier III
is awesome!
V.I.P.
is uber awesome!
Contributor
Insider
auf derartiges würde ich aufpassen (hlrank != "null" || tlrank != "null") du fragst hier einen String ab ob dieser null ist,
warscheinlich solltest du aber auf den typ achten > (hlrank != null || tlrank != null)

Edit: am besten direkt schauen ob es eine Zahl ist anstatt null
(typeof hlrank == "number" || typeof tlrank == "number")
 

chris1992

Active Member
Stimmt hast recht @Multivitamin und nein @irgendwer der Code ist nicht copy paste sondern komplett frei nach schnauze ohne hintergundwissen und js Erfahrung nach meinem ersten Tag lesen hingeklatscht worden nur ich hab ihn etwas verhunzt als ich ihn in repl.it testen wollte, dafür umschreiben musste... Dann in sinus bot testen wollte und ihn wieder ändern musste... Gibt's da auch ein gutes programm was wie repl.it. Ist also wo man's testen kann aber auch mit der sinusbot engine usw?
 

irgendwr

no longer active, "retired" staff member
is awesome!
V.I.P.
is uber awesome!
Contributor
Insider
und nein @irgendwer der Code ist nicht copy paste sondern komplett frei nach schnauze ohne hintergundwissen und js Erfahrung nach meinem ersten Tag lesen hingeklatscht worden nur ich hab ihn etwas verhunzt als ich ihn in repl.it testen wollte, dafür umschreiben musste... Dann in sinus bot testen wollte und ihn wieder ändern musste...
War auch nicht als Anschuldigung gemeint sondern eher so general advice, weil Leute das halt sehr oft so machen.
Kein Mensch ist perfekt und man muss immer irgenwo anfangen, kam vielleicht etwas vorwurfsvoll rüber. Sorry :)
Gibt's da auch ein gutes programm was wie repl.it. Ist also wo man's testen kann aber auch mit der sinusbot engine usw?
Ne, momentan nicht, max und ich hatten mal überlegt sowas zu bauen aber das ist glaube ich nicht ganz so einfach umzusetzen ^^
 
Last edited:

irgendwr

no longer active, "retired" staff member
is awesome!
V.I.P.
is uber awesome!
Contributor
Insider
Das is ja richtig aids fürn Einsteiger mit dem testen
Glaube JavaScript lernen ist die eigentliche Hürde.
Wenn man das drauf hat sollte es eigentlich nicht mehr allzu schwer sein, weil wir recht viele Beispiele, Erklärungen und Dokumentation haben (und ein Forum mit Leuten die bereit sind einem zu helfen).

Edit: hab mich irgendwie leicht verlesen, das testen kann man mit nem Trick ein bisschen einfacher machen:

Wenn du deine config so anpasst kannst du scripts automatisch reloaden sobald sie geändert werden (spart deutlich zeit):
Code:
[Scripts]
  AllowReload = true
  WatchScripts = [
    "foobar.js",
    "mein_script.js"
  ]
 
Last edited:

chris1992

Active Member
Wenn du deine config so anpasst kannst du scripts automatisch reloaden sobald sie geändert werden (spart deutlich zeit):
Code:
[Scripts]
  AllowReload = true
  WatchScripts = [
    "foobar.js",
    "mein_script.js"
  ]
was tut den foobar.js oder was ist das XD
 

chris1992

Active Member
Hab nochmal neu angefangen und mir einiges durchgelesen sieht auf jeden fall schöner aus aber wird bestimmt auch nicht gehn und mega viel bullshit drin stehn wo ich dachte das es so geht XD.
https://repl.it/@Shadowstep/HotSLogsTSRANK

2 Funktionen habe ich Teilkopiert da ich keine Ahnung aktuell hab wie man eine intervall startet wo user überprüft werden aber werde mich da weiter reinfuchsen... wollen nämlich das alle user die z.b. Zerber#1234 | Jens oder so heißen dann automatisch eine Servergruppe bekommen die ihrem Helden oder Teamliga Rang entspricht ^^
 

Matthias

Donor
is awesome!
Zu dem thema es ist schwer zu verstehen. es gibt grundlagen in js die man wohl irgendwie haben muss durfte ich die letzten tage festellen und ich habe bis jetzt immer noch keine schöne es5 documentation gefunden aber das forum und die devs mod vip sind hier eine super super hilfe ich habe auch vor ein paar tagen mich an mein erstes script gewagt und es derbe ver...... und die Damen und Herren haben mir immer geholfen.
Also ich denke hier ist es möglich es zu lernen.
 
Top