Guten Morgen allerseits,
Schonmal als Vorwarnung: Es ist mein erstes Script
Aber zu meinem Problem: Ich habe ein Script geschrieben, oder eher versucht es zu schreiben, das einem User die eingestelle Gruppe zuweist, sobald er in einen Channel joint oder sie ihm wieder wegnimmt wenn er die Gruppe beim Betreten des Channels schon hat. Natürlich immer mit Nachricht was passiert ist, also Gruppe gegeben/entfernt/Fehler. Eigentlich halte ich das Script für fertig, aber der Sinusbot spuckt beim Starten diese Fehlermeldung aus:
error in script: Uncaught exception: SyntaxError: Unexpected end of input at SilentAssigner.js:110:2 }); ^ Stack trace: SyntaxError: Unexpected end of input
Und ich habe keine Ahnung, woran es liegen könnte, ich habe jetzt eine halbe Stunde mit diesen Klammern und Semikolons rumgebastelt weil immer entweder ein ); gefehlt hat oder zu viel war und ich bin langsam am Rand der Verzweiflung.
Ich gehe mal davon aus, dass sich hier so gut wie jeder besser damit auskennt als ich, deshalb poste ich es mal hier.
Damit einen schönen Tag euch noch
Hier noch das Script:
Schonmal als Vorwarnung: Es ist mein erstes Script

Aber zu meinem Problem: Ich habe ein Script geschrieben, oder eher versucht es zu schreiben, das einem User die eingestelle Gruppe zuweist, sobald er in einen Channel joint oder sie ihm wieder wegnimmt wenn er die Gruppe beim Betreten des Channels schon hat. Natürlich immer mit Nachricht was passiert ist, also Gruppe gegeben/entfernt/Fehler. Eigentlich halte ich das Script für fertig, aber der Sinusbot spuckt beim Starten diese Fehlermeldung aus:
error in script: Uncaught exception: SyntaxError: Unexpected end of input at SilentAssigner.js:110:2 }); ^ Stack trace: SyntaxError: Unexpected end of input
Und ich habe keine Ahnung, woran es liegen könnte, ich habe jetzt eine halbe Stunde mit diesen Klammern und Semikolons rumgebastelt weil immer entweder ein ); gefehlt hat oder zu viel war und ich bin langsam am Rand der Verzweiflung.

Ich gehe mal davon aus, dass sich hier so gut wie jeder besser damit auskennt als ich, deshalb poste ich es mal hier.
Damit einen schönen Tag euch noch

Hier noch das Script:
JavaScript:
registerPlugin({
name: 'SilentGroupAssigner',
version: '1.0',
description: 'Assigns silent-group to any user joining lobby',
author: 'Kxngoro || Malte <[email protected]>',
vars:[{
name: 'ChannelName',
title: 'User should get silent assigned on joining this channel',
type: 'channel'
},
{
name: 'Forbidden_Groups',
title: 'Groups which are not allowed to be silent',
type: 'strings'
},
{
name: 'Silent_Group',
title: 'Group which should be assigned to users joining the lobby',
type: 'string'
},
{
name: 'ForbiddenMessage',
title: 'Message sent to anyone who is member of a forbidden group',
type: 'string',
placeholder: 'Default: Du hast keine Berechtigung, die Silent-Gruppe zu erhalten!'
},
{
name: 'SucceededMessage',
title: 'Message displayed if operation succeeded',
type: 'string',
placeholder: 'Default: Du hast die Silent-Gruppe erhalten! Betrete diesen Channel erneut, um die Silent-Gruppe zu entfernen.'
},
{
name: 'AlreadyMemberMessage',
title: 'Message shown if client is already member of silent group',
type: 'string',
placeholder: 'Default: Dir wurde die Silent-Gruppe entfernt!'
}
]
}, function (sinusbot, config) {
var engine = require('engine');
var backend = require('backend');
var event = require('event');
var store = require('store');
var lobby = store.getInstance('silentassigner_channel')
if (typeof config.ChannelName == 'undefined' || config.ChannelName == '') {
engine.log('No lobby set, script useless, stopping script');
return;
}
if (typeof config.Forbidden_Groups == 'undefined') {
engine.log('No Forbidden Groups defined')
}
if (typeof config.ForbiddenMessage == 'undefined') {
engine.log('No ForbiddenMessage defined')
}
if (typeof config.Silent_Group == 'undefined') {
engine.log('No Group defined, script is useless, stopping script');
return;
if (config.ForbiddenMessage){
ForbiddenMessage = config.ForbiddenMessage;
}
if (config.SucceededMessage){
SucceededMessage = config.SucceededMessage;
}
if (config_change) {
engine.saveConfig(config);
}
if (backend.isConnected()) {
init();
}
function init() {
if(typeof config.ChannelName != 'undefined') {
var ch_ChannelName = backend.getChannelByID(config.ChannelName)
}
if (typeof config.ForbiddenMessage != 'undefined') {
var ForbiddenMessage = 'Du hast keine Berechtigung, die Silent-Gruppe zu erhalten!';
}
if (typeof config.SucceededMessage != 'undefined') {
var SucceededMessage = 'Du hast die Silent-Gruppe erhalten! Betrete diesen Channel erneut, um die Silent-Gruppe zu entfernen.';
}
if (typeof config.AlreadyMemberMessage != 'undefined') {
var AlreadyMemberMessage = 'Dir wurde die Silent-Gruppe entfernt!';
}
return false;
}
event.on('clientMove', function(ev) {
var client_channel = ev.client.getChannels();
if (ev.client.isSelf()) {
return;
if (ev.isInGroup(client, Forbidden_Groups) === true) {
ev.client.chat(ForbiddenMessage);
return;
}
if (client_channel == config.ChannelName && ev.isInGroup(client, Forbidden_Groups) === false && ev.client.isInGroup(Silent_Group) === false) {
ev.client.addToServerGroup(Silent_Group);
ev.client.chat(SucceededMessage);
}
if (client_channel == config.ChannelName && ev.isInGroup(client, Forbidden_Groups) === false && ev.client.isInGroup(Silent_Group) === true) {
ev.client.removeFromServerGroup(Silent_Group);
ev.client.chat(AlreadyMemberMessage);
}
return false;
}
});