Jump to content

EURONYMOUS


Lullaby

Recommended Posts

Ὁ Σατανισμὸς καὶ κατ' ἐπέκτασιν τὸ Black Metal εἶναι κυρίως φιλοσοφικὰ δόγματα καὶ τάσσονται ἐναντίον τῶν θυμάτων καὶ κάθε ἀπόψεως ποὺ ἐκφράζει τὸ δίκαιο τῶν ὑποστηρικτῶν τῆς ἠρεμίας καὶ τὸ ἄδικο αὐτοῦ ποὺ ἐπιθυμεῖ τὴν ἀναταραχή της. Ἡ ἠρεμία εἶναι μία κατάστασι ἀδράνειας, τὴν ὁποία μία Σατανικὴ φύσι δὲν ἠμπορεῖ νὰ δεχθῆ, οῦσα κυριολεκτικῶς ἐξηρτημένη ἁπὸ τὴν ἐπιβολὴ τοῦ ἐαυτοῦ της ἔναντι τῶν ἄλλων καὶ τὴν ἰκανοποίησι τῆς σκαιότητός της. Ἀντιφάσκει μὲ τὴν ἰδεολογία τοῦ Σατανισμοῦ ὁ ἐγκωμιασμὸς καὶ ἡ ὑποστήριξι κάποιου ἐπειδὴ ὑπῆρξεν  θύμα, γι' αὐτὸ καὶ οἱ χριστιανικὲς πράξεις μίσους ἐναντίον οἱουδήποτε λαοῦ, γιὰ τὸν Σατανιστὴ εἶναι πρότυπο καὶ παράδειγμα πρὸς μίμησιν, ὅπως ἀκριβῶς καὶ ἡ Μεσαιωνικὴ Ἱερὰ Ἐξέτασι καὶ ὄχι ἐργαλεῖα ἐπιθέσεως πρὸς τὸν ἐχθρὸ ἐν εἴδει ὑποκριτικῆς ἀνάγκης γνωστοποιήσεως τῆς ἀληθείας στὸν κόσμο καὶ ἐπιθυμίας δικαιώσεως τοῦ θύματος. Τέτοιες πρακτικὲς ἄλλως τε, ξεχειλίζουν δημοκρατισμὸ ἀφ οὖ χρησιμοποιοῦν τὴν ἤδη ὑπάρχουσα γαμημένη θυματολατρικὴ ἠθικὴ τοῦ κόσμου, στὴν ὕπαρξι τῆς ὁποίας σημειωτέον ὁ χριστιανισμὸς συνέβαλλεν κατὰ πολύ, γιὰ νὰ τραβήξουν τὸν ὄχλο πρὸς τὸν ἰδεολογικὸ προσανατολισμὸ τοῦ δημαγωγοῦ προπαγανδιστὴ  ποὺ ἀσκεῖ τὴν ἀνωτέρω τακτική, δημιουργῶντας του τὸ συναίσθημα τῆς συμπόνοιας ἢ τῆς ἐπιθυμίας γιὰ ἐκδίκησι, ἑὰν ὑποτίθεται ὅτι τὸ θύμα εἶναι ἡ ὁμὰς τῆς ὁποίας εἶναι κρῖκος. Ἡ συγκίνησι καὶ ἡ συμπόνοια κάθε εἴδους ὅμως, δὲν εἶναι ἴδιον τοῦ Σατανιστοῦ...

 

Τὸ Black Metal δὲν εἶναι ὑποκατηγορία τοῦ Χέβυ Μέταλ, μὰ ἡ καλλίτερη ἔκφανσι αὐτοῦ. Εἶναι τὸ πραγματικὸ Χέβυ Μέταλ, γιατὶ ἡ ἐν λόγω μουσικὴ ἐδημιουργήθη ἀποκλειστικῶς γιὰ νὰ ἰκανοποιήση καὶ νὰ δοξάση τὸν Ἄναρχο Ἄγγελο καὶ τὸ Black Metal ἦτον ποὺ ἐπιτέλεσε αὐτὸν τὸν σκοπὸ μὲ τὸν καλλίτερο δυνατὸ τρόπο. Αὐτὸ ὀφείλεται σὲ ἕνα καὶ μόνο ἄτομο τὸ ὁποῖο ὥρισεν τὴν πραγματικότητα αὐτὴ καὶ τὴν ἔκανεν πράξι: Τὸν Euronymous, ὁ ὁποῖος ὅμως δὲν ἦτον ποτὲ τὸ θύμα τῆς ὑποθέσεως, καθῶς κάθε πολεμιστὴς ἔχει καὶ ἕνα τέλος, τὸ ὁποῖο συνήθως ἀπέχει ἁπὸ τὰ ὡραῖα καὶ χαρούμενα τέλη ποὺ ἔχουν οἱ πρωταγωνιστὲς τῶν ταινιῶν.

 

Ὁ Euronymous (22 Μαρτίου, 1968 – 10 Αὐγούστου, 1993) ἦτον ὁ κιθαρίστας τοῦ συγκροτήματος Mayhem, ἕνα ἐκ τῶν πρώτων συγκροτημάτων ποὺ ἠκολούθησαν καὶ καθιέρωσαν τὸ κλασσικὸ στυλ Black Metal ποὺ γνωρίζομεν ἰσήμερον. Πρόκειται γιὰ τὸ πρῶτο πραγματικὸ Black Metal συγκρότημα, ἅν καὶ ἁπὸ μουσικῆς ἀπόψεως, παράλληλα ὑπῆρξαν καὶ ἄλλα, κάποια ἐκ τῶν ὁποίων ἦσαν οἱ Darkthrone, οἱ Immortal καὶ οἱ Carpathian Forest. Μαζὺ μὲ τὸ συγκρότημα, λειτουργοῦσε καὶ τὸ κατάστημα πωλήσεως δίσκων ἀκραίου Μέταλ, ὑπὸ τὴν ὀνομασία Helvete (ἤτοι «Hell – Κόλασι» στὰ νορβηγικά).

 

Καθιέρωσεν τὸν ἀληθινὸ Σατανισμὸ στὸ Black Metal, ὁ ὁποῖος καὶ κάνει τὸ ἐν λόγω εἶδος μουσικῆς νὰ ξεχωρίζη ἁπὸ κάθε ἄλλο ἐξ αὐτῶν ποὺ παράγουν ἀκραῖο ἦχο καὶ ἔχουν ὡς θέμα τὴν ἀλλαγὴ τοῦ κόσμου πρὸς τὸ καλλίτερο καὶ τὴν δικαίωσι τῶν θυμάτων. Ὥρισεν τὴν πραγματικότητα μὲ τὸν σωστὸ Σατανιστικὸ τρόπο σκέψεως τὸν ὁποῖον ἀδυνατοῦν νὰ κατανοήσουν οἱ περισσώτεροι ἐκ τῶν μεταλλάδων ποὺ αὐτοαποκαλοῦνται Σατανιστὲς ἐν ὦ ὑποστηρίζουν ἀντισατανικὲς καὶ ἀντισατανιστικὲς ὀργανώσεις ὅπως ἦναι ἡ «Ἐκκλησία τοῦ Σατανά», τὴν ὁποία ὁ Euronymous πολλάκις εἶχεν κατηγορήσει γιὰ τὴν μαζική της ἀποδεκτικότητα καὶ ὑποκρισία νὰ αὐτοαποκαλῆται Σατανιστικὴ, ἐν ὦ δὲν εἶναι τίποτε παραπάνω ἁπὸ μία πολιτικῶς ὀρθὴ ἐπιχείρησι γιὰ νὰ ἰκανοποιοῦν κάποιοι τὶς σεξουαλικὲς καὶ οἰκονομικές τους ἀνάγκες, ἐκμεταλλευόμενοι τὴν ἀνηθικότητα καὶ ἠλιθιότητα τοῦ γαμημένου κόσμου ποὺ ἐντυπωσιάζεται ἁπὸ «Σατανιστικὲς» ταμπέλες. Ὁ Euronymous ἐγνώριζεν τὸν σκοπὸ ὑπάρξεως τῆς ἀνθρωπότητος καὶ τὸν ἐξέφραζεν εὐθέως, δίχως νὰ ἐνδιαφέρεται γιὰ τὸ τὶ θὰ εἰποῦν οἱ πελάτες του γνωρίζοντες ὅτι τοὺς μισεῖ... οἱ ἄνθρωποι ἔχουν ὡς μοναδικὸ στόχο ὑπάρξεως νὰ ὑπηρετοῦν τὶς ἀνώτερες δυνάμεις, νὰ ἦναι σκλάβοι τῆς θρησκείας, ἤτις εἶναι ἡ μοναδικὴ πραγματικότητα σὲ αὐτὸν τὸν κόσμο, σημαντικότερη ἁπὸ κάθε πολιτικὴ ἰδεολογία καὶ κάθε ἐγωπαθέστατο συναίσθημα ἀνυπακοῆς ποὺ ἔχει ὁ ἠλίθιος κόσμος ὅσο δὲν βλέπει τὴν ρομφαία τοῦ Κυρίου να σηκώνεται πάνω ἁπ' τὸν λαιμό του. Ὁ Σατανισμὸς εἶναι ἀνάποδος χριστιανισμὸς καὶ ἔτσι πρέπει νὰ παραμείνη. Ὁτιδήποτε δὲν ἐκφράζει αὐτὴν τὴν πραγματικότητα, δὲν εἶναι τίποτε παραπάνω ἁπὸ μία κερδοσκοπικὴ ὑποκρισία ποὺ οὑδεμία σχέσι ἔχει μὲ τὴν Λατρεία πρὸς τὸν Διάβολο, ἡ ὁποία καὶ χαρακτηρίζει τὸν ἀληθινὸ Σατανισμό.

 

Ὑπὸ αὐτὴ τὴ προοπτική, ἡ λατρεία τοῦ θανάτου εἶναι ἡ συμπλήρωσι τοῦ Σατανισμοῦ καὶ ὁ Euronymous τὸ ἔδειξεν αὐτὸ μὲ τὸν καλλίτερο δυνατὸ τρόπο, καθιερώνοντας τὸ νεκρικὸ βάψιμο (corpsepaint) στὸ Black Metal, τὸ ὁποῖο εἶναι ὑποχρεωμένο νὰ ἐκφράζη τὶς προαναφερθείσες ἰδέες. Σύμβολο τῆς νεκρικῆς καὶ δαιμονικῆς καταστάσεως τοῦ προσώπου ἐν ὦ αὐτὸ σαπίζη στὸν τάφο, ἐπιδεικνύον τὴν κακία τῆς νεκρικῆς καὶ δαιμονικῆς φύσεως μέσω τῆς ἀγριότητος τοῦ ἐν λόγω βαψίματος.

 

Ἡ δὲ ἄρνησί του νὰ ὑποταχθῆ στὴν ἐμπορικότητα στὴν ὁποία πολλὰ Black Metal συγκροτήματα εἶχον καὶ ἔχουν ὑποκύψει, μὲ ἀποκορύφωμα νὰ ὑπάρχουν ἰσήμερον μπάντες ποὺ ὄχι μόνον ἔχουν γυναικεία μέλη στὴν παράταξί τους, μὰ καὶ δηλώνουν εὐθαρσῶς ὅτι ἐνδιαφέρονται ἰδιαιτέρως γιὰ τὴν ἐμπορικότητα τῶν δίσκων τους, τὸν ἔκανε νὰ ἀδυνατῆ νὰ πληρώση ἀκόμη καὶ τοὺς προσωπικούς του λογαριασμούς, ἐν ὦ ὑπῆρξαν στιγμὲς κατὰ τὶς ὁποίες δὲν εἶχεν χρήματα γιὰ φαγητό. Ἐξ οὖ καὶ ἡ ἰδιαίτερη ἀγάπη του πρὸς τὸν ἀπολυταρχικὸ κομμουνισμό, τὸ πλέον κατάλληλο πολίτευμα γιὰ τὴν ἔνωσι τοῦ κόσμου κάτω ἁπὸ ἀπάνθρωπες συνθήκες οἱ ὁποίες τὸν καθιστοῦν δυνατότερο βασανίζουσες αὐτόν, ἀντὶ νὰ τὸν περιορίζουν σὲ πολιτισμένες ὑποκρισίες μὲ σκοπὸ τὸ χρηματικὸ κέρδος, στὸ ὁποῖο ὁ Euronymous ποτὲ δὲν ὑπέκυψε, δημιουργῶντας πάντοτε ἄλμπουμ τὰ ὁποῖα ἦσαν ὅττι καλλίτερο κυκλοφοροῦσε στὴν ἀγορά, μὲ μοναδικὸ σκοπὸ τὸν ἐγκωμιασμὸ τοῦ θανάτου, τὴν ἔκφρασι τῆς μισανθρωπίας καὶ τὴν Λατρεία τοῦ Κυρίου, ὑπὸ τὸ ἀπόκοσμο καὶ ἀκραῖο ἦχο τῆς δυνατῆς καὶ συνεχόμενης κιθάρας καὶ τῶν ὑψηλοῦ τόνου δαιμονικῶν κραυγῶν ποὺ περνοῦν ἁπὸ πάνω της.

 

Ἀποκορύφωμα τῆς ἐν λόγω ἀκουστικῆς καὶ ποιητικῆς ἀριστουργηματικῆς φύσεως τοῦ Euronymous, δὲν ἦτον ἄλλο ἁπὸ τὸ τελευταῖο του ἄλμπουμ, De Mysteriis Dom Sathanas, στὸ ὁποῖο καὶ ξεχειλίζει τὸ σκοτάδι ἀλλὰ καὶ ἡ νεκρικὴ ἀτμόσφαιρα ποὺ προοιονιζόταν τὰ ἐπερχόμενα γεγονότα. Σημειωτέον δέ, ὁ ἴδιος ὁ Euronymous ποτὲ δὲν κατάφερεν νὰ κυκλοφορήση τὸ ἐν λόγω ἄλμπουμ, ἀρχικῶς λόγω τῆς αὐτοκτονίας τοῦ Dead (Per Yngve Ohlin) τὸν Ἀπρίλιο τοῦ 1991, τραγουδιστὴ τῶν Mayhem καὶ κατόπιν τὴν δολοφονία τοῦ ἰδίου.

Σὲ αὐτὸ τὸ σημεῖο κάνομεν μίαν παύσι, μὲ σκοπὸ τὴν γνωστοποίησι τῆς προσωπικότητος τοῦ Dead καὶ τὶς ἐνδιαφέρουσες λεπτομέρειες τοῦ θανάτου του:

 

Ὁ Dead ἐξ ἀρχῆς δὲν ἠγαποῦσε τὸν συγκεκριμένο κόσμο καὶ δὲν ἐπιθυμοῦσε νὰ ζῆ σὲ αὐτόν. Ὡς ἐκ τούτου, ηὐτοκτόνησεν μετὰ ἁπὸ ὡρισμένες λογομαχίες ποὺ εἶχεν μὲ τὸν Euronymous στὸ σπίτι ὅπου ὅλα τὰ μέλη τοῦ συγκροτήματος διέμεναν. Ὁ ἴδιος ἐσκόπευε ἁπὸ καιρὸ νὰ αὐτοκτονήση καὶ ὁ Euronymous ἐνθάρρυνε τὸν ἐν λόγω σκοπό, ὡς τε νὰ ἐκμεταλλευθῆ τὴν δημοσιότητα τοῦ γεγονότος, ἀλλὰ καὶ τὴν ἐμπειρία τοῦ θανάτου τὴν ὁποία καὶ ἠγαποῦσε. Γνωρίζοντας ὁ Euronymous τὴν ψυχολογικὴ κατάστασι στὴν ὁποία εὐρύσκετο ὁ Dead, στὶς 8 Ἀπριλίου τοῦ 1991, ἐφρόντισεν νὰ ἀφεθῆ μόνος στὸ σπίτι, μαζὺ μὲ ἕνα μαχαίρι καὶ μία καραμπίνα, γεμισμένη ἁπὸ τὶς σφαίρες ποὺ ὁ Varg Vikernes (Count Grishnackh) τοῦ εἶχεν δωρίσει πρὸ μερικῶν ἠμερῶν. Ὁ Dead ἔκοψεν τὶς φλέβες καὶ τὸ λαρύγγι του καὶ κατόπιν ἐπυροβολήθη μὲ τὴν καραμπίνα. Ὅλως περιέργως, τὸ πτῶμα εὐρέθη ἁπὸ τὸν ἴδιο τὸν Euronymous, ὁ ὁποῖος σκαρφάλωσε ἁπ' τὸ παράθυρο προκειμένου νὰ μπῆ στὸ κλειδωμένο δωμάτιο. Ὅταν εἶδεν τὸ πτῶμα, ἔφυγεν ἁπ' τὸ σπίτι καὶ ἐπέστρεψεν μὲ μία φωτογραφικὴ μηχανή, μὲ τὴν ὁποία ἀπαθανάτισε τὸ θέαμα, τραβῶντας φωτογραφίες, μία ἐκ τῶν ὁποίων ἐχρησιμοποιήθη στὸ ἄλμπουμ Dawn of the Black Hearts τέσσερα χρόνια ἀργώτερα. Ὁ Euronymous ἐδημιούργησεν καὶ ἕνα κολιὲ ἁπὸ τὰ θραύσματα τοῦ τρύπιου κρανίου, ἑν ὦ φήμες ἀνέφεραν μεταξὺ ἄλλων ὅτι ἔφαγεν καὶ μέρος τοῦ ἐγκεφάλου. Ὁ ἴδιος ὅμως τὸ διέψευσεν αὐτὸ σὲ μία ἐκ τῶν ἐπόμενων συνεντεύξεών του.

 

Ἡ συμπεριφορά του αὐτὴ δυσαρέστησε κάποιους ἐκ τῶν ὑποκριτῶν ποὺ τὸν στήριζαν καὶ συνεργάζονταν μαζύ του στὸ συγκρότημα. Προφανῶς ἐπίστευαν ὅτι ὁ φανατικὸς σαδισμὸς καὶ ἡ ἀγάπη γιὰ τὸν θάνατο ποὺ ὁ Euronymous ἐπιδείκνυε, δὲν ἦτον κάτι παραπάνω ἁπὸ ἕνα ἐπικοινωνιακὸ κόλπο, μὲ στόχο τὴν δημοσιότητα. Ἡ ἀντιμετώπισί του ὅμως ἀπέναντι στὸν Dead, οἱ φήμες γιὰ τὴν δηλητηρίασι ἑνὸς πολωνοῦ δημοσιογράφου ἁπὸ αὐτὸν καὶ γενικώτερα ἡ ἀκραία συμπεριφορά του, ἔδειχναν ὅτι ἐπίστευεν πλέον στὴν πραγματικότητα αὐτὰ ποὺ εἶχον συμφωνήσει νὰ κάνουν καὶ νὰ λένε ἐν εἴδει ἐπιθυμίας γιὰ δημοσιότητα. Αὐτὸ τοὺς ἔκανε νὰ ἀρχίσουν νὰ ἀποστασιοποιοῦνται ἁπ' αὐτόν. Ὁ ἐγωκεντρισμὸς καὶ ὁ φθόνος ἦσαν ἐπίσης κάποια ἐκ τῶν γνωρισμάτων τοῦ χαρακτῆρος του.

 

Ὁ Euronymous ἦτον μεταξὺ ἄλλων καὶ ὁ κύριος ἀρχηγὸς τοῦ «Ἐσώτερου Κύκλου», ὅπως ὠνομάζετο ἡ ὁμάς τῶν μουσικῶν τῆς νορβηγικῆς Black Metal σκηνῆς, ποὺ ὑποκινούμενοι ἁπὸ ἐκεῖνον, διέπραξαν ὡρισμένες νομικῶς διωκόμενες ἐνέργειες ἐν ὀνόματι τοῦ Σατανισμοῦ, κάποιες ἐκ τῶν ὁποίων ἦσαν πενῆντα ἐμπρησμοὶ χριστιανικῶν ἐκκλησιῶν καὶ ἕνας (ἐξιχνιασμένος) φόνος, ὁ ὁποῖος γιὰ ἕναν χρόνο παρέμεινεν ἕνα καλὰ κρυμμένο μυστικὸ μέσα στὸν Κύκλο.

 

Προφανῶς ὁ Euronymous δὲν ἦτον τὸ θύμα τῆς ὑποθέσεως καὶ ἡ δολοφονία του ἀργώτερα ἀποτέλεσεν τὴν ὁλοκλήρωσί του ὡς πρότυπο τῆς Black Metal σκηνῆς καὶ τοῦ Σατανισμοῦ. Φίλος τοῦ Euronymous ἦτον πλέον ὁ Count Grishnackh, ὁ ὁποῖος καὶ παίζει μπάσο στὸ De Mysteriis Dom Sathanas. Στὴν πορεία οἱ ὁπαδοὶ τοῦ Euronymous ἤρχισαν νὰ μὴν ἐντυπωσιάζωνται πλέον ἁπ' τὴν Σατανιστικὴ φυσιογνωμία του, ἰδιαιτέρως τώρα ποὺ ἐγνώριζαν ὅτι ἐπίστευε ὅλα ὅσα ἔκανεν καὶ τίποτα δὲν ἦτον ἁπλῶς ἕνα ἐπικοινωνιακὸ κόλπο γιὰ νὰ τραβήξη τὴν προσοχή. Αὐτὸ ἐδημιούργησεν γιὰ ἄλλη μία φορὰ τὸ συναίσθημα τοῦ φθόνου στὸ θυμικὸ τοῦ Euronymous. Φθόνο πρὸς τὸν πρώην φίλο του ὁ ὁποῖος καὶ εὐθυνόταν γι' αὐτὴ τὴ κατάστασι λόγω τοῦ ὅτι ἐθεώρησεν πὼς μπῆκε φυλακὴ ἐξ αἰτίας του καὶ γι' αὐτὸν τὸν λόγο, τὸν κακολογοῦσε ἐκτενῶς, ἐν ὦ εἶχεν πλέον ἀποστασιοποιηθῆ πλήρως ἁπ' αὐτόν. Ὁ Euronymous δὲν εἶχεν ἄλλη ἐπιλογή, παρὰ νὰ ἀπαλλαγῆ ἁπὸ τὸν μαλάκα πρώην συνεργάτη του, ὁ ὁποῖος καὶ ἀποτελοῦσε ἐμπόδιο στὴν ἐπίτευξι τῶν στόχων του γιὰ τὴν δοξασία τοῦ Ὀνόματος Τοῦ Σατανά μέσω τῆς κοινῆς ἐπαναστάσεως πρὸς τὸ ἰσημερινὸ κατεστημένο καὶ κάθε του νόμο, μαζὺ μὲ τὴν ἰκανοποίησι τῶν προσωπικῶν συναισθημάτων σαδισμοῦ καὶ μισανθρωπίας ποὺ ὁ Euronymous ἔνοιωθε.

 

Ὀλίγες ἠμέρες πρὶν τὸν θάνατό του, ἐκατηγορήθη γιὰ ἐπίθεσι ἐναντίον δύο ἀνδρῶν, οἱ ὁποῖοι τὸν ἐπροσέβαλλαν κυττάζοντες τὴν κοπέλα του καὶ ἐπιδιώκοντες χειραψία μὲ αὐτήν, μὲ ἀποτέλεσμα ἐκεῖνος νὰ σπάση τὸ μπουκάλι ποὺ κρατοῦσε, στὸ κεφάλι τοῦ ἑνὸς καὶ ἔπειτα νὰ χαρακώση μὲ τὸ σπασμένο μπουκάλι τὸ πρόσωπο τοῦ δευτέρου, ὁ ὁποῖος καὶ ἐπιχείρησεν νὰ τοῦ ἐπιτεθῆ. Αὐτὸ ἦτον ἄλλη μία ἔνδειξι γιὰ τὸ τὶ ἦτον ἰκανὸς νὰ κάνη καὶ ὅτι τίποτε πλέον δὲν γινόταν γιὰ τὴν δημοσιότητα καὶ μόνον.

 

Τὸ σχέδιο ποὺ ἐσκέφθη, ἦτον νὰ καλέση τὸν Vikernes στὸ σπίτι του καὶ ἀφ οὖ θὰ τὸν ἔκανεν νὰ λιποθυμήση μὲ ἕνα ἀναισθητικὸ ὅπλο, θὰ τὸν σκότωνε κατόπιν βασανισμοῦ, δεμένο σὲ ἕνα δένδρο στὸ δάσος, ἐν ὦ ὁ ἴδιος θὰ βιντεοσκοποῦσε τὸ γεγονός. Δυστυχῶς, τὸ ἐν λόγω σχέδιο τὸ ἐκμυστηρεύθηκε καὶ στὸν καινούργιο κιθαρίστα τῶν Mayhem, Snorre Ruch, ὁ ὁποῖος μέσα στὴν ἠλιθιότητά του τὸ ἐμαρτύρησεν στὸν Count μὲ περισσὴ εὐκολία, προδίδοντας τὸν Euronymous. Αὐτὸ εἶχεν ὡς ἀποτέλεσμα ὁ Count νὰ γνωρίζη τὸ σχέδιο ὅταν ἐκεῖνος τὸν προσκάλεσε σπίτι του μὲ ἀφορμὴ τὴν ὑπογραφὴ τοῦ συμβολαίου γιὰ συνεργασία μεταξύ τους ξανά. Ἡ δὲ ἀνεξήγητη φιλικότητα ἐκ μέρους τοῦ Euronymous ἦτον αὐτὴ ποὺ ἐπιβεβαίωσεν τὰ λεγόμενα τοῦ Ruch.

 

Στὶς 10 Αὐγούστου τοῦ 1993, ὁ Count καὶ ὁ Ruch ἔφτασαν ἁπ' τὸ Bergen στὸ Oslo, ὅπου εὐρίσκετο τὸ σπίτι τοῦ Euronymous. Τὸ ρολόι ἔδειχνε τρεῖς τὸ πρωί, μία ὤρα κατὰ τὴν ὁποία συνήθιζαν νὰ κάνουν ἐπισκέψεις ὁ ἕνας στὸν ἄλλον οὔτως ἢ ἄλλως καὶ συμφώνως μὲ τὰ λεγόμενα τοῦ Count, ὁ σκοπός του δὲν ἦτον ἄλλος παρὰ νὰ ἀπορρίψη τὴν πρότασι γιὰ συνεργασία ποὺ τοῦ εἶχεν κάνει ὁ Euronymous. Ὁ Ruch περίμενε στὴν εἴσοδο τῆς πολυκατοικίας, ἐν ὦ ὁ Count ἀνέβηκε τὰ σκαλιὰ γιὰ νὰ φτάση στὸ διαμέρισμα ὅπου ἐκεῖνος διέμενε. Ἐν ἀρχὴ δὲν ἠθέλησε νὰ τοῦ ἀνοίξη καὶ ὅταν τὸ ἔκανε, ἔδειχνε νευρικὸς στὸν διάδρομο ἐντὸς τοῦ διαμερίσματος, προδίδοντας τοὺς δίκαιους σκοπούς του. Τα πράγματα ὅμως περιπλέκονται στὴν πορεία, καθῶς οἱ δυό τους ἔμειναν μόνοι καὶ κανεῖς δὲν ἐγνωρίζει τὶ ἀκριβῶς ἔγινε. Συμφώνως, ὡς τόσο, μὲ τὰ λεγόμενα τοῦ Count, ὁ Euronymous ἦτον ἐκεῖνος ποὺ τοῦ ἐπετέθη πρῶτος μὲ μία κλωτσιὰ στὸ στῆθος, λόγω τῆς ἐπιθετικότητος ποὺ τοῦ ἔδειξε, γιγνώσκοντας ὅτι ἐσχεδίαζε νὰ τὸν σκοτώση. Παρ' ὅλα αὐτὰ ὁ Euronymous ἦτον ἀρκετὰ κοντύτερος καὶ ἡ ἐπίθεσί του δὲν εἶχεν τὸ ἐπιθυμητὸ ἀποτέλεσμα, ὁπότε καὶ κατευθύνθηκε πρὸς τὴν κουζίνα μὲ σκοπὸ νὰ χρησιμοποιήση μαχαίρι ἀντὶ τῶν χεριῶν καὶ τῶν ποδιῶν του. Ὁ Count ὅμως εἶχεν μαζύ του ἕναν σουγιά, μὲ τὸν ὁποῖον καὶ τὸν ἀπέτρεψε. Ὁ Euronymous ἔτρεξεν πρὸς τὸ ὑπνοδωμάτιο, μὰ μὲ τὴν δεύτερη μαχαιριὰ βγῆκε ἁπ' τὸ διαμέρισμα καὶ κατέβηκε τὶς σκάλες μὲ τὸν Count πίσω του νὰ τὸν ἀκολουθῆ προσπαθῶντας νὰ ἐπιτύχη περισσώτερες μαχαιριὲς ἐπάνω του. Καθῶς κατέβαιναν τὶς σκάλες, οἱ τοίχοι βάφθηκαν ἁπ' τὸ αἷμα ποὺ ἄφηνε πίσω του ἐν ὦ τοὺς ἐχρησιμοποιοῦσε ὡς βοήθημα στὴν προσπάθειά του νὰ μείνη ὄρθιος καὶ νὰ ξεφύγη. Ὁ Ruch ἀντίκρισε ἔντρομος τὸ θέαμα τοῦ Euronymous νὰ τρέχη αἱματωμένος φορῶντας μονάχα τὸ ἐσώρουχό του, προσπαθῶντας νὰ ξεφύγη ἁπὸ τὶς μαχαιριὲς τοῦ Count, ποὺ συνέχιζε νὰ τὸν ἀκολουθῆ μαχαιρώνοντάς τον στὸν ἀριστερὸ ὦμο. Ἡ καταδίωξι ἔληξεν μὲ τὸν Euronymous νὰ πέφτη στὰ γυαλιὰ τῆς λάμπας ποὺ εἶχεν σπάσει μὲ τὸ χέρι του καθῶς ἔτρεχεν. Ἡ προσοχὴ τοῦ Count ἀπεσπάσθη, ὅταν ἐκεῖνος ἐρώτησε τὸν Ruch ἑὰν ἦναι καλὰ, ἐν ὦ ὁ δεύτερος κατέβαινε τὴν σκάλα καὶ κατευθυνόταν πρὸς τὸ ἀμάξι πανικόβλητος. Τότε ὁ Euronymous στάθηκε ξανὰ στὰ πόδια του δείχνοντας πρόθυμος νὰ παραδεχθῆ τὴν ἥττα του. Παρ' ὅλα αὐτά, ἡ ἀναμέτρησι ἐτελείωσεν μὲ τὸ μαχαίρι τοῦ Count καρφωμένο στὸ κρανίο του, ἀφ οὖ ἐκεῖνος ἐπροσπάθησεν νὰ τοῦ ἐπιτεθῆ ξανὰ κλωτσῶντας τον.

 

Αὐτὴ εἶναι ἡ ἐκδοχὴ τῆς ἰστορίας τὴν ὁποίαν ὁ Count κατέθεσεν στὸ δικαστήριο, ἀφ οὖ συνελήφθη. Ὁ δὲ Ruch κατέθεσεν ὅτι ὅλα ἦσαν προσχεδιασμένα καὶ ἐσκόπευαν ἐξ ἀρχῆς νὰ τὸν σκοτώσουν. Ὅπως καὶ νὰ ἔγιναν ὅμως τὰ γεγονότα, ὁ θάνατος τοῦ Euronymous ἦτον ἡ ὁλοκλήρωσι τῆς προσωπικότητός του καὶ σὲ καμμία περίπτωσι δὲν ἦτον τὸ θύμα τὸ ὁποῖο οἱοσδήποτε θυματολάτρης θὰ ἐπιθυμοῦσε νὰ ὑποστηρίξη. Ὄχι... Ἦτον τὸ τέλειο Σατανιστικὸ πρότυπο. Τὰ δὲ λεγόμενά του στὶς συνεντεύξεις του, ὅσο καὶ ἅν φαίνωνται νὰ πηγάζουν ἁπ' τὴν ἀνωριμότητά του καὶ τὴν ἐπιθυμία του νὰ δείξη ὅτι ἦτον ὄντως μισάνθρωπος, σαδιστὴς καὶ ἀκραιφνὴς Σατανιστὴς μὲ μεσαιωνικὲς ἀπόψεις, στὴν πραγματικότητα εἶναι πηγὴ σκέψεως ποὺ βοηθοῦν στὴν ἀνάπτυξι τῶν ἀληθινῶν Σατανιστικῶν ἰδεῶν στὸ θυμικό καὶ στὴν λογική.

 

Οἱ Mayhem ἰσήμερον, δὲν εἶναι τίποτε παραπάνω ἁπὸ τὶς ἤδη ὑπάρχουσες μπάντες Black Metal, μὲ οὑδεμία ἰδιαιτερότητα στοὺς στίχους, τὴν μουσικὴ ἢ τὶς πράξεις τους. Οἱ δὲ ἰδέες τους, περιορίζονται μονάχα πάνω στὴν σκηνή καὶ στὶς συνεντεύξεις τους, ἐν ὦ ἐκμεταλλεύωνται τὸ ὄνομα ποὺ ἐδημιούργησεν ἐξ ὁλοκλήρου ἕνα ἄτομο τὸ ὁποῖο δὲν ὑποστηρίζουν καὶ κατακρίνουν ἄμεσα ὡς «ἀκραῖο».

Link to comment
Share on other sites

Αμαν πια με τους Mayhem. Πάντα ήταν ένα μέτριο και χλυαρό συγκρότημα, απλά αυτός άκουσε την ιστορία με την δολοφονία του κιθαρίστα στα 10 του και σοκαρίστηκε.

Link to comment
Share on other sites

O Euronymous itan o monos pou den vgike pote ap' tous Mayhem ap' tin stigmi tis dimiourgias tous mexri ton thanato tou. Kai oi Mayhem itan to proto sugrotima alithinou black metal, asxetos ean stin arxi itan pozeria... Oloi oi alithinoi Satanistes os epanastasi to ksekinane kai katalligoun na kanoun anthropothusies sto Onoma tou Kuriou. Katalaves mori ksekoliasmeni kota? "Katalava" tha les...

 

Συνεπώς κατέληξες στο Σατανισμό με βάση κάποιους ανίδεους ποζεράδες. Επιλέγεις σωστά τις βάσεις για τα πιστεύω σου , ω ναι!

Link to comment
Share on other sites

Συνεπώς κατέληξες στο Σατανισμό με βάση κάποιους ανίδεους ποζεράδες. Επιλέγεις σωστά τις βάσεις για τα πιστεύω σου , ω ναι!

Den ksekinisa me vasi kanenan... Oloi ston Satanismo muountai me skopo tin epanastasi pros auta pou emathan kai upostirizoun apla o,ti pio kako, xoris na kseroun giati. Stin poreia ginontai alithinoi me tin gnosi pou apoktoun sto onoma tis enstiktodous akraias epanastaseos kai kataligoun na proskunane, na ksekoiliazoun kai na pethainoun gia ton Satanismo... O Euronymous einai to kalutero paradeigma...

Link to comment
Share on other sites

Den ksekinisa me vasi kanenan... Oloi ston Satanismo muountai me skopo tin epanastasi pros auta pou emathan kai upostirizoun apla o,ti pio kako, xoris na kseroun giati. Stin poreia ginontai alithinoi me tin gnosi pou apoktoun sto onoma tis enstiktodous akraias epanastaseos kai kataligoun na proskunane, na ksekoiliazoun kai na pethainoun gia ton Satanismo... O Euronymous einai to kalutero paradeigma...

 

Ωραία, τράβα αυτοκτόνα και συ μπας και σταματήσεις να ποστάρεις

Link to comment
Share on other sites

O Ethnikososialismos exoun os vasi tin agapi gia to ethnos kai kurios mia sugekrimeni fuli tin opoia o kathe politikopoiimenos propagandistis orizei allios logo skopimotitos. To epomeno arthro tha exei os thema auto kai idiaitera tin Nazistiki Germania. Etsi tha exo tin eukairia na miliso kai gia tin upokrisia tis poutanas xrusis augis kai ton koimismenon koproskulon pou tin apartizoun.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.


  • Posts

    • I have a Polish friend who gave me a solution for this issue, all credit goes to @SSnakEE. The ingenuity is as follows. Total thanks to him. Playable.java insert to public boolean canKeepAttacking(Creature target) { //if target is flagged keep attacking if (targetPlayer.getPvpFlag() > 0) return true;  
    • adapt for 409 version wtih old config/sql/html's only the core update!   package net.sf.l2j.gameserver.model.actor.instance; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.StringTokenizer; import net.sf.l2j.commons.lang.StringUtil; import net.sf.l2j.commons.math.MathUtil; import net.sf.l2j.Config; import net.sf.l2j.gameserver.data.SkillTable; import net.sf.l2j.gameserver.data.manager.BufferManager; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.actor.Summon; import net.sf.l2j.gameserver.model.actor.template.NpcTemplate; import net.sf.l2j.gameserver.network.serverpackets.ItemList; import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; import net.sf.l2j.gameserver.skills.L2Skill; public class SchemmerBuffer extends Folk { private static final int PAGE_LIMIT = 6; public SchemmerBuffer(int objectId, NpcTemplate template) { super(objectId, template); } private void showMainWindow(Player activeChar) { final NpcHtmlMessage html = new NpcHtmlMessage(0); html.setFile(getHtmlPath(getNpcId(), 0)); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%name%", activeChar.getName()); html.replace("%buffcount%", "You have " + activeChar.getBuffCount() + "/" + activeChar.getMaxBuffCount() + " buffs."); activeChar.sendPacket(html); } @Override public void onBypassFeedback(Player player, String command) { if (player.getPvpFlag() > 0 && Config.PRESTRICT_USE_BUFFER_ON_PVPFLAG) { player.sendMessage("You can't use buffer when you are pvp flagged."); return; } if (player.isInCombat() && Config.PRESTRICT_USE_BUFFER_IN_COMBAT) { player.sendMessage("You can't use buffer when you are in combat."); return; } if (player.isDead()) return; StringTokenizer st = new StringTokenizer(command, " "); String actualCommand = st.nextToken(); if (actualCommand.startsWith("bufflist")) { autoBuffFunction(player, st.nextToken()); } else if (actualCommand.startsWith("restore")) { String noble = st.nextToken(); player.getStatus().setMaxCpHpMp(); if (noble.equals("true")) { SkillTable.getInstance().getInfo(1323, 1).getEffects(player, player); player.broadcastPacket(new MagicSkillUse(this, player, 1323, 1, 850, 0)); } final Summon summon = player.getSummon(); if (summon != null) summon.getStatus().setMaxHpMp(); showMainWindow(player); } else if (actualCommand.startsWith("cancellation")) { L2Skill buff; buff = SkillTable.getInstance().getInfo(1056, 1); buff.getEffects(this, player); player.stopAllEffectsExceptThoseThatLastThroughDeath(); player.broadcastPacket(new MagicSkillUse(this, player, 1056, 1, 850, 0)); player.stopAllEffects(); final Summon summon = player.getSummon(); if (summon != null) summon.stopAllEffects(); showMainWindow(player); } else if (actualCommand.startsWith("openlist")) { String category = st.nextToken(); String htmfile = st.nextToken(); NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); if (category.startsWith("null")) { html.setFile("data/html/mods/buffer/" + htmfile + ".htm"); // First Page if (htmfile.equals("index")) { html.replace("%name%", player.getName()); html.replace("%buffcount%", "You have " + player.getBuffCount() + "/" + player.getMaxBuffCount() + " buffs."); } } else html.setFile("data/html/mods/buffer/" + category + "/" + htmfile + ".htm"); html.replace("%objectId%", String.valueOf(getObjectId())); player.sendPacket(html); } else if (actualCommand.startsWith("dobuff")) { int buffid = Integer.valueOf(st.nextToken()); int bufflevel = Integer.valueOf(st.nextToken()); String category = st.nextToken(); String windowhtml = st.nextToken(); String votebuff = null; if (st.hasMoreTokens()) votebuff = st.nextToken(); if (windowhtml.equals("malaria")) { if (player.getInventory().getItemCount(Config.PVOTE_BUFF_ITEM_ID, 0) >= 1) { player.getInventory().destroyItemByItemId("VoteCoins", Config.PVOTE_BUFF_ITEM_ID, 1, player, null); player.sendPacket(new ItemList(player, true)); player.sendMessage(1 + " Vote eye destroyed."); } else { player.sendMessage("You dont have enough (" + 1 + ") vote item for buff."); return; } } if (votebuff != null) { if (player.getInventory().getItemCount(Config.PVOTE_BUFF_ITEM_ID, 0) >= Config.PVOTE_BUFF_ITEM_COUNT) { player.getInventory().destroyItemByItemId("VoteCoins", Config.PVOTE_BUFF_ITEM_ID, Config.PVOTE_BUFF_ITEM_COUNT, player, null); player.sendPacket(new ItemList(player, true)); player.sendMessage(Config.PVOTE_BUFF_ITEM_COUNT + " vote stone destroyed."); } else { player.sendMessage("You dont have enough (" + Config.PVOTE_BUFF_ITEM_COUNT + ") vote item for buff."); return; } } Creature target = player; if (category.startsWith("pet")) { if (player.getSummon() == null) { player.sendMessage("Incorrect Pet"); showMainWindow(player); return; } target = player.getSummon(); } MagicSkillUse mgc = new MagicSkillUse(this, target, buffid, bufflevel, 1150, 0); player.sendPacket(mgc); player.broadcastPacket(mgc); SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, target); NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); html.setFile("data/html/mods/buffer/" + category + "/" + windowhtml + ".htm"); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%name%", player.getName()); player.sendPacket(html); } else if (actualCommand.startsWith("getbuff")) { int buffid = Integer.valueOf(st.nextToken()); int bufflevel = Integer.valueOf(st.nextToken()); if (buffid != 0) { SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); broadcastPacket(new MagicSkillUse(this, player, buffid, bufflevel, 450, 0)); showMainWindow(player); } } else if (actualCommand.startsWith("support")) { showGiveBuffsWindow(player); } else if (actualCommand.startsWith("givebuffs")) { final String schemeName = st.nextToken(); final int cost = Integer.parseInt(st.nextToken()); Creature target = null; if (st.hasMoreTokens()) { final String targetType = st.nextToken(); if (targetType != null && targetType.equalsIgnoreCase("pet")) target = player.getSummon(); } else target = player; if (target == null) player.sendMessage("You don't have a pet."); else if (cost == 0 || player.reduceAdena("NPC Buffer", cost, this, true)) BufferManager.getInstance().applySchemeEffects(this, target, player.getObjectId(), schemeName); } else if (actualCommand.startsWith("editschemes")) { showEditSchemeWindow(player, st.nextToken(), st.nextToken(), Integer.parseInt(st.nextToken())); } else if (actualCommand.startsWith("skill")) { final String groupType = st.nextToken(); final String schemeName = st.nextToken(); final int skillId = Integer.parseInt(st.nextToken()); final int page = Integer.parseInt(st.nextToken()); final List<Integer> skills = BufferManager.getInstance().getScheme(player.getObjectId(), schemeName); if (actualCommand.startsWith("skillselect") && !schemeName.equalsIgnoreCase("none")) { if (skills.size() < player.getMaxBuffCount()) skills.add(skillId); else player.sendMessage("This scheme has reached the maximum amount of buffs."); } else if (actualCommand.startsWith("skillunselect")) skills.remove(Integer.valueOf(skillId)); showEditSchemeWindow(player, groupType, schemeName, page); } else if (actualCommand.startsWith("createscheme")) { try { final String schemeName = st.nextToken(); if (schemeName.length() > 14) { player.sendMessage("Scheme's name must contain up to 14 chars. Spaces are trimmed."); return; } final Map<String, ArrayList<Integer>> schemes = BufferManager.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes != null) { if (schemes.size() == Config.PBUFFER_MAX_SCHEMES) { player.sendMessage("Maximum schemes amount is already reached."); return; } if (schemes.containsKey(schemeName)) { player.sendMessage("The scheme name already exists."); return; } } BufferManager.getInstance().setScheme(player.getObjectId(), schemeName.trim(), new ArrayList<>()); showGiveBuffsWindow(player); } catch (Exception e) { player.sendMessage("Scheme's name must contain up to 14 chars. Spaces are trimmed."); } } else if (actualCommand.startsWith("deletescheme")) { try { final String schemeName = st.nextToken(); final Map<String, ArrayList<Integer>> schemes = BufferManager.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes != null && schemes.containsKey(schemeName)) schemes.remove(schemeName); } catch (Exception e) { player.sendMessage("This scheme name is invalid."); } showGiveBuffsWindow(player); } super.onBypassFeedback(player, command); } @Override public String getHtmlPath(int npcId, int val) { String filename = ""; if (val == 0) filename = "" + npcId; else filename = npcId + "-" + val; return "data/html/mods/buffer/" + filename + ".htm"; } /** * Send an html packet to the {@link Player} set a parameter with Give Buffs menu info for player and pet, depending on targetType parameter {player, pet}. * @param player : The {@link Player} to make checks on. */ private void showGiveBuffsWindow(Player player) { final StringBuilder sb = new StringBuilder(200); final Map<String, ArrayList<Integer>> schemes = BufferManager.getInstance().getPlayerSchemes(player.getObjectId()); if (schemes == null || schemes.isEmpty()) sb.append("<font color=\"LEVEL\">You haven't defined any scheme.</font>"); else { for (Map.Entry<String, ArrayList<Integer>> scheme : schemes.entrySet()) { final int cost = getFee(scheme.getValue()); StringUtil.append(sb, "<font color=\"LEVEL\">", scheme.getKey(), " [", scheme.getValue().size(), " / ", player.getMaxBuffCount(), "]", ((cost > 0) ? " - cost: " + StringUtil.formatNumber(cost) : ""), "</font><br1>"); StringUtil.append(sb, "<a action=\"bypass npc_%objectId%_givebuffs ", scheme.getKey(), " ", cost, "\">Use on Me</a>&nbsp;|&nbsp;"); StringUtil.append(sb, "<a action=\"bypass npc_%objectId%_givebuffs ", scheme.getKey(), " ", cost, " pet\">Use on Pet</a>&nbsp;|&nbsp;"); StringUtil.append(sb, "<a action=\"bypass npc_%objectId%_editschemes Buffs ", scheme.getKey(), " 1\">Edit</a>&nbsp;|&nbsp;"); StringUtil.append(sb, "<a action=\"bypass npc_%objectId%_deletescheme ", scheme.getKey(), "\">Delete</a><br>"); } } final NpcHtmlMessage html = new NpcHtmlMessage(0); html.setFile(getHtmlPath(getNpcId(), 1)); html.replace("%schemes%", sb.toString()); html.replace("%max_schemes%", Config.PBUFFER_MAX_SCHEMES); html.replace("%objectId%", getObjectId()); player.sendPacket(html); } /** * Send an html packet to the {@link Player} set as parameter with Edit Scheme Menu info. This allows the {@link Player} to edit each created scheme (add/delete skills) * @param player : The {@link Player} to make checks on. * @param groupType : The group of skills to select. * @param schemeName : The scheme to make check. * @param page : The current checked page. */ private void showEditSchemeWindow(Player player, String groupType, String schemeName, int page) { final NpcHtmlMessage html = new NpcHtmlMessage(0); final List<Integer> schemeSkills = BufferManager.getInstance().getScheme(player.getObjectId(), schemeName); html.setFile(getHtmlPath(getNpcId(), 2)); html.replace("%schemename%", schemeName); html.replace("%count%", schemeSkills.size() + " / " + player.getMaxBuffCount()); html.replace("%typesframe%", getTypesFrame(groupType, schemeName)); html.replace("%skilllistframe%", getGroupSkillList(player, groupType, schemeName, page)); html.replace("%objectId%", getObjectId()); player.sendPacket(html); } /** * @param player : The {@link Player} to make checks on. * @param groupType : The group of skills to select. * @param schemeName : The scheme to make check. * @param page : The current checked page. * @return A {@link String} representing skills available for selection for a given groupType. */ private String getGroupSkillList(Player player, String groupType, String schemeName, int page) { // Retrieve the entire skills list based on group type. List<Integer> skills = BufferManager.getInstance().getSkillsIdsByType(groupType); if (skills.isEmpty()) return "That group doesn't contain any skills."; // Calculate page number. final int max = MathUtil.countPagesNumber(skills.size(), PAGE_LIMIT); if (page > max) page = max; // Cut skills list up to page number. skills = skills.subList((page - 1) * PAGE_LIMIT, Math.min(page * PAGE_LIMIT, skills.size())); final List<Integer> schemeSkills = BufferManager.getInstance().getScheme(player.getObjectId(), schemeName); final StringBuilder sb = new StringBuilder(skills.size() * 150); int row = 0; for (int skillId : skills) { final String icon = (skillId < 100) ? "icon.skill00" + skillId : (skillId < 1000) ? "icon.skill0" + skillId : "icon.skill" + skillId; sb.append(((row % 2) == 0 ? "<table width=\"280\" bgcolor=\"000000\"><tr>" : "<table width=\"280\"><tr>")); if (schemeSkills.contains(skillId)) StringUtil.append(sb, "<td height=40 width=40><img src=\"", icon, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", BufferManager.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass npc_%objectId%_skillunselect ", groupType, " ", schemeName, " ", skillId, " ", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomout2\" fore=\"L2UI_CH3.mapbutton_zoomout1\"></td>"); else StringUtil.append(sb, "<td height=40 width=40><img src=\"", icon, "\" width=32 height=32></td><td width=190>", SkillTable.getInstance().getInfo(skillId, 1).getName(), "<br1><font color=\"B09878\">", BufferManager.getInstance().getAvailableBuff(skillId).getDescription(), "</font></td><td><button action=\"bypass npc_%objectId%_skillselect ", groupType, " ", schemeName, " ", skillId, " ", page, "\" width=32 height=32 back=\"L2UI_CH3.mapbutton_zoomin2\" fore=\"L2UI_CH3.mapbutton_zoomin1\"></td>"); sb.append("</tr></table><img src=\"L2UI.SquareGray\" width=277 height=1>"); row++; } for (int i = PAGE_LIMIT; i > row; i--) StringUtil.append(sb, "<img height=41>"); // Build page footer. sb.append("<br><img src=\"L2UI.SquareGray\" width=277 height=1><table width=\"100%\" bgcolor=000000><tr>"); if (page > 1) StringUtil.append(sb, "<td align=left width=70><a action=\"bypass npc_" + getObjectId() + "_editschemes ", groupType, " ", schemeName, " ", page - 1, "\">Previous</a></td>"); else StringUtil.append(sb, "<td align=left width=70>Previous</td>"); StringUtil.append(sb, "<td align=center width=100>Page ", page, "</td>"); if (page < max) StringUtil.append(sb, "<td align=right width=70><a action=\"bypass npc_" + getObjectId() + "_editschemes ", groupType, " ", schemeName, " ", page + 1, "\">Next</a></td>"); else StringUtil.append(sb, "<td align=right width=70>Next</td>"); sb.append("</tr></table><img src=\"L2UI.SquareGray\" width=277 height=1>"); return sb.toString(); } /** * @param groupType : The group of skills to select. * @param schemeName : The scheme to make check. * @return A {@link String} representing all groupTypes available. The group currently on selection isn't linkable. */ private static String getTypesFrame(String groupType, String schemeName) { final StringBuilder sb = new StringBuilder(500); sb.append("<table>"); int count = 0; for (String type : BufferManager.getInstance().getSkillTypes()) { if (count == 0) sb.append("<tr>"); if (groupType.equalsIgnoreCase(type)) StringUtil.append(sb, "<td width=65>", type, "</td>"); else StringUtil.append(sb, "<td width=65><a action=\"bypass npc_%objectId%_editschemes ", type, " ", schemeName, " 1\">", type, "</a></td>"); count++; if (count == 4) { sb.append("</tr>"); count = 0; } } if (!sb.toString().endsWith("</tr>")) sb.append("</tr>"); sb.append("</table>"); return sb.toString(); } /** * @param list : A {@link List} of skill ids. * @return a global fee for all skills contained in the {@link List}. */ private static int getFee(ArrayList<Integer> list) { if (Config.PBUFFER_STATIC_BUFF_COST > 0) return list.size() * Config.PBUFFER_STATIC_BUFF_COST; int fee = 0; for (int sk : list) fee += BufferManager.getInstance().getAvailableBuff(sk).getPrice(); return fee; } private void autoBuffFunction(Player player, String bufflist) { ArrayList<L2Skill> skills_to_buff = new ArrayList<>(); List<Integer> list = null; if (bufflist.equalsIgnoreCase("fighter")) list = Config.PFIGHTER_SKILL_LIST; else if (bufflist.equalsIgnoreCase("mage")) list = Config.PMAGE_SKILL_LIST; if (list != null) { for (int skillId : list) { L2Skill skill = SkillTable.getInstance().getInfo(skillId, SkillTable.getInstance().getMaxLevel(skillId)); if (skill != null) skills_to_buff.add(skill); } for (L2Skill sk : skills_to_buff) sk.getEffects(player, player); player.updateEffectIcons(); list = null; } skills_to_buff.clear(); showMainWindow(player); } }  
    • L2 OPIUM - AUTO FARM HTML    
    • json_extract does not exist. -> wrong mysql server version.
  • Topics

×
×
  • Create New...