Jump to content

Question

Posted

Καλησπέρα παίδες..

Ανανεώνω το παλιό, και βάζω λύσεις σχετικά με το aCis.

 

Λοιπόν, επειδή το Ελληνικό έχει μείνει λίγο πίσω, και γενικά το Greek Help Section δεν έχει σχεδόν καθόλου κίνηση, είπα να ανεβάσω αυτό να σας βοηθήσει βρείτε αυτό που ψάχνετε εφόσον δεν το'χετε και πολύ με τα αγγλικά, και γενικά κάποια δεν υπάρχουν πουθενά.

Κακά τα ψέματα, πολλοί πλέον δουλεύουν στο aCis και δυσκολεύονται να το χρησιμοποιήσουν. Ελπίζω αυτό να βοηθήσει σε γενικά πλαίσια.

 

Ας αρχίσουμε..

 

=========================================================================================

Ερωτήσεις σχετικά με το Project aCis:

Πάτηστε το "Show" για να το δείτε.

 

 

Δεν θα γράψω για αναζήτηση ή κάτι. Εφόσον είναι πολύ λίγα αυτά που υπάρχουν για το aCis στο Ελληνικό section.

Ωστόσο θα αρχίσω να βάζω δικά μου.

 

Ε. Θέλω να περάσω μια Buffer στο aCis, αλλά δεν βρίσκω φάκελο jscripts/scripts όπως έκανα στο frozen. Τι να κάνω?

A. Λοιπόν, για να περάσουμε μια Buffer στο aCis, είναι πολύ εύκολο να γίνει μέσω core[eclipse]. Πολλές ή λίγες γνώσεις, υπάρχει shared μια πολύ ωραία Buffer. Την έφτιαξε το φίλος merlon Δείτε παρακάτω το link.

http://www.maxcheaters.com/topic/209418-interlude-acis-buffer-tryskell/

 

Για τους αρχάριους, το share σας δείχνει με τα σύμβολα [ + ] και [ - ] τι να βάλουμε και τι να βγάλουμε. Όπου [ - ] σημαίνει ότι αντικαθιστούμε την γραμμή του με το [ + ].

Εάν δυσκολεύεστε, δείτε αυτό.

 

Ε. Έχω περάσει μία Gatekeeper, αλλά δεν μπορώ στη navicat να βρω το table [teleports] με τις location για να βάλω αυτές που θέλω.

Α. Λοιπόν, για να αλλάξεις και να βάλεις τα δικά σου location στην gatekeeper σου, θα πρέπει να πας στο <Data/xml> και να ανοίξεις το teleports.xml

Εκεί μέσα, θα μπορέσετε να βάλετε τα δικά σας Farm area. Για παράδειγμα, 

Πείτε ότι θέλετε να περάσετε το Cave of Trials για Farm area. Βάζετε το παρακάτω μέσα στο teleports.xml

<teleport id="10199" loc_x="9349" loc_y="-112490" loc_z="-2531" price="1" fornoble="0"/>   <!--Cave of Trials -->

Μετά θα πάτε στην Gatekeeper σας[Gameserver/data/html/teleporter], και θα αλλάξετε το teleport id. θα γίνει έτσι για παράδειγμα..

<tr><td><a action="bypass -h npc_%objectId%_goto 10199"><font color="LEVEL">Farm Zone 1</font></a></td></tr>

Πολύ εύκολο ε? ;)

 

Ε. Θέλω να περάσω μία custom armor, αλλά δεν βρίσκω το armors/custom_armors table στην navicat όπως στο frozen, τι κάνω?

Α. Λοιπόν, στο aCis γίνετε να βάλουμε ότι θέλουμε, χωρίς να πειράξουμε την navicat. Απλά μόνο στο <Data/xml/items>. Για παράδειγμα, εάν θέλετε να βάλετε μία Dynasty, θα κάνετε το εξής..

Θα φτιάξετε νεό xml αρχείο μέσα στο <Data/xml/items> με όνομα ας πούμε [9300-9399], και θα περάσετε αυτό που κατεβάσατε. [Όπως είναι ο φάκελος με τα stats της armor/weapon, τα πετάτε μέσα στο νέο xml αρχείο που κάνατε].

Αυτό ήταν.. Δεν χρειάζεται να βάλετε κάτι στη navicat. Κάνετε αυτά που πρέπει στο client και είστε έτοιμοι.

 

Ε. Θέλω να βάλω ένα NPC στο aCis, τι θα πρέπει να κάνω?

Α. Λοιπόν, πάλι δεν χρειάζεται να περάσουμε τίποτα στη navicat. Αφού βρήκατε το NPC που θέλετε, θα πρέπει να πάτε στο <Data/xml/npcs> ανοίγετε το υπάρχων xml αρχείο με όνομα [50000-50999], και βλέπουμε πως εκεί μέσα είναι όλα τα ήδη υπάρχων NPC στο game αυτού του αρχείου. 

Κάνουμε για παράδειγμα αντιγραφή το τελευταίο npc που υπάρχει εκεί μεσα, κάνουμε νέα γραμμή και το πετάμε. Για παράδειγμα,

<npc id="50008" idTemplate="30519" name="Tryskell" title="Crappy Buffer">
<set name="level" val="70"/>
<set name="radius" val="7"/>
<set name="height" val="18"/>
<set name="rHand" val="0"/>
<set name="lHand" val="0"/>
<set name="type" val="L2Buffer"/>
<set name="exp" val="0"/>
<set name="sp" val="0"/>
<set name="hp" val="2444.46819"/>
<set name="mp" val="1345.8"/>
<set name="hpRegen" val="7.5"/>
<set name="mpRegen" val="2.7"/>
<set name="pAtk" val="688.86373"/>
<set name="pDef" val="295.91597"/>
<set name="mAtk" val="470.40463"/>
<set name="mDef" val="216.53847"/>
<set name="crit" val="4"/>
<set name="atkSpd" val="253"/>
<set name="str" val="40"/>
<set name="int" val="21"/>
<set name="dex" val="30"/>
<set name="wit" val="20"/>
<set name="con" val="43"/>
<set name="men" val="20"/>
<set name="corpseTime" val="7"/>
<set name="walkSpd" val="50"/>
<set name="runSpd" val="120"/>
<set name="dropHerbGroup" val="0"/>
<set name="attackRange" val="40"/>
<ai type="default" ssCount="0" ssRate="0" spsCount="0" spsRate="0" aggro="0" canMove="true" seedable="false"/>
<skills>
<skill id="4045" level="1"/>
<skill id="4416" level="18"/>
</skills>
</npc>
- </list>
+ <npc id="50009" idTemplate="30540" name="Angela" title="VIP MANAGER">
+ <set name="level" val="70"/>
+ <set name="radius" val="8"/>
+ <set name="height" val="20.5"/>
+ <set name="rHand" val="0"/>
+ <set name="lHand" val="0"/>
+ <set name="type" val="L2Vip"/>
+ <set name="exp" val="0"/>
+ <set name="sp" val="0"/>
+ <set name="hp" val="2444.46819"/>
+ <set name="mp" val="1345.8"/>
+ <set name="hpRegen" val="7.5"/>
+ <set name="mpRegen" val="2.7"/>
+ <set name="pAtk" val="688.86373"/>
+ <set name="pDef" val="295.91597"/>
+ <set name="mAtk" val="470.40463"/>
+ <set name="mDef" val="216.53847"/>
+ <set name="crit" val="4"/>
+ <set name="atkSpd" val="253"/>
+ <set name="str" val="40"/>
+ <set name="int" val="21"/>
+ <set name="dex" val="30"/>
+ <set name="wit" val="20"/>
+ <set name="con" val="43"/>
+ <set name="men" val="20"/>
+ <set name="corpseTime" val="7"/>
+ <set name="walkSpd" val="50"/>
+ <set name="runSpd" val="120"/>
+ <set name="dropHerbGroup" val="0"/>
+ <set name="attackRange" val="40"/>
+ <ai type="default" ssCount="0" ssRate="0" spsCount="0" spsRate="0" aggro="0" canMove="true" seedable="false"/>
+ <skills>
+ <skill id="4045" level="1"/>
+ <skill id="4416" level="14"/>
+ </skills>
+ </npc>
+ </list>

Μετά αυτό που έχουμε να κάνουμε, είναι να αλλάξουμε το npc id, template id, name, title [<npc id="50009" idTemplate="30540" name="Angela" title="VIP MANAGER">].

Επίσης, στο [<set name="type" val="L2Vip"/>] θα πρέπει να βάλετε το είδος του NPC που θέλετε να βάλετε.

Π.χ αν είναι gatekeeper θα βάλετε [ <set name="type" val="L2Teleporter"/> ].

Εάν είναι GM Shop, θα βάλετε [ <set name="type" val="L2Merchant"/> ]

 

Αυτά είναι τα πιο σημαντικά που σε κάποιους φαίνονται δύσκολα και έτσι αποφεύγουν να χρησιμοποιήσουν aCis.

 

 

 

Πάμε τώρα να δούμε προβλήματα γενικά για τα L2 Project.

Πατήστε το Show για να το δείτε.

 

 

=========================================================================================

Πρώτα απ'όλα, πριν δώσω την κάθε ερώτηση, όταν το θέμα σας είναι άλλο πέραν από αυτά που θα δώσω εδώ, κάντε ένα 36gHzt0.png στο [Request] Dev Help [L2J] Gr  με το ένα μέρος του προβλήματος που έχετε.

Π.χ αν έχετε πρόβλημα με την Buffer, γράφουμε στην αναζήτηση "Buffer", και εκεί βλέπουμε πολλά και διάφορα ήδη απαντημένα topic με αυτή την λέξη.

Αν η ερώτηση είναι πρόβλημα με το Gameserver σε οτιδήποτε πρόβλημα, γράφουμε "Gameserver error" και επίσης θα βρούμε πολλά.

Αν navicat είναι το πρόβλημά μας, γράφουμε "navicat" και το ίδιο με τα παραπάνω..

Πρώτα δίνουμε χρόνο στον εαυτό μας να ψάξουμε την λύση, και μετά ρωτάμε!

 

Ε. Έχω πρόβλημα με την εγκατάσταση του Server μου, δεν ανοίγει ή παίρνω διάφορα Error! Τι κάνω?

Α. Πρώτα τσέκαρε το παρακάτω 

, και ακολούθησε τα βήματά του.. Αν βλέπετε πως έχετε κάνει τα σωστά βήματα, αλλά εξακολουθείτε να έχετε πρόβλημα, τότε ανοίγεται νέο θέμα με μία εικόνα από το πρόβλημα!

 

Ε. Έχω πρόβλημα με την Buffer, μου βγάζει "You Don't Meet The Criteria μπλα μπλα". Τι κάνω?

Α. Το πρόβλημα εδώ είναι στα Imports. Δείτε παρακάτω μερικά Imports που πρέπει να αλλάξετε:

Πάτα Show


 

L2J Frozen Imports (Πάμε Gameserver/Data/scripts βρίσκουμε την Buffer που περάσαμε, και κοιτάμε τα Imports ανοίγονται το __int__.py αρχείο). Αντικατάσταση με τα παρακάτω αν το Project είναι L2JFrozen:

import sys
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2jfrozen.gameserver.datatables import SkillTable
from com.l2jfrozen.util.database import L2DatabaseFactory
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest

(Μετά μέσα στον φάκελο Gameserver/Data θα δείτε ένα αρχείο με όνομα scripts.cfg, το κάνουμε επεξεργασία, πάμε στα Custom και βάζουμε από κάτω π.χ το "custom/9999_NPCBuffer/__init__.py" Μπορεί η Buffer να λέγεται αλλιώς, και όχι με 9999, τότε αλλάξτε τον αριθμό με τον σωστό που έχετε εσείς).

 

 

Ε. Πως ακριβώς κάνω Compile? Τι προγράμματα χρειάζομαι? Επίσης, πως περνάω έναν Java code?

Α. Δείτε έναν πολύ εύκολο οδηγό όπου θα βρείτε ότι ακριβώς χρειάζεστε. Πως Να Κάνεις Compile & Πως Περνάς Έναν Java Code!

 

Ε. Τι είναι τα SVN, και που μου χρησιμεύουν?

Α. Παραπάνω γράφω για το Compile, compile κάνουμε ένα SVN για να πάρουμε τα αρχεία από το Project και να κάνουμε την δουλειά που θέλουμε! Εκεί μέσα επεξεργαζόμαστε το κάθε είδους Java code που υπάρχουν! Δείτε ένα SVN Link για να καταλάβετε τι είναι.

 

Ε. Που μπορώ να μάθω μερικά πράγματα για την Java ώστε να μπω στο κλίμα?

Α. Δείτε έναν οδηγό, όπου θα καταλάβετε μερικά αρχάρια πράγματα. Μερικά Αρχάρια Πράγματα Για Την Java Που Θα Μας Βοηθήσει Στο Ξεκίνημα Μας...

 

Ε. Πως ανοίγω τα ports στο PC μου? Έχω δοκιμάσει τα πάντα.

Α. Δείτε εδώ έναν οδηγό για το πως να το κάνετε αυτό. Άνοιγμα Port σε windows

 

Ε. Έχω πρόβλημα με την ώρα των Buff/dance μου... Είναι χ λεπτά. Τι κάνω?

Α. Δείτε ένα Topic, όπου με αυτό το πρόγραμμα τα αλλάζεται εύκολα και γρήγορα. Πως να αλλάξετε time στα buffs με ειδικό πρόγραμμα!

 

Ε. Προσπαθώ να περάσω ένα NPC στον Server μου, αλλά είτε δεν γίνεται Spawn ή δεν μου εμφανίζει τα Items σωστά στο  Gm Shop.

Α. Το κάθε NPC, αποτελείτε από κάποιες κατηγορίες. Π.χ το Shop:

1) Navicat. - Πάμε μέσα στην Navicat, πατάμε δεξί click στο όνομα της Database μας, και πατάμε "Execute" και βρίσκουμε το SQL από το κάθε npc που κατεβάσαμε.

2) Data/Html/Merchant. - Εδώ, απλά πηγαίνουμε στην διαδρομή που μας λέει, και πετάμε με επικόλληση τα αρχεία που μας δώθηκαν.

3) Gameserver/Data/Multisell - Εδώ ρίχνουμε τα Multisell όπου μέσα τους θα είναι οι τιμές και τα ID από τα Item μας!

(Κάποια NPC, που δεν είναι Shop, θα χρειαστεί να βάλετε είτε Scripts, είτε να περάσετε κάποια αρχεία στο Gameserver/data/stats.

Βεβαιώσου ότι μέσα στο NPC που κατέβασες, έχεις περάσει σωστά αυτές τις κατηγορίες που σου δίνονται.

 

Ε. Έχω πρόβλημα με μερικά Armos/Weapons, δεν μπορώ να τα δω μέσα στο παιχνίδι. Είναι μαύρη εικόνα, τι κάνω?

Α. Δεν είσαι στο σωστό μέρος να ζητήσεις βοήθεια. Χρειάζεται να πας στο [Request] Client Dev Help και να ρωτήσεις το πρόβλημά σου!

 

Ε. Ψάχνω έναν κώδικα για τάδε πράγμα, μπορείτε να με βοηθήσετε?

Α. Πρέπει να πας στο Shares and Files [L2J] και να κάνεις 36gHzt0.png ένα μέρος του ονόματος από τον κώδικα που θες, και θα σου βγάλει αρκετά πράγματα εκεί μέσα! Αν Δεν υπάρχει, τότε άνοιξε ένα θέμα και πες τι ακριβώς θέλεις!

 

Ε. Πως μπορώ να κάνω τα Siege να αρχίζουν στην τάδε μέρα και ώρα που θέλω?

Α. Δείτε ένα link, όπου μόλις βάλετε ημερομηνία/ώρα/λεπτά/δευτερόλεπτα, αυτό θα μας δώσει τους αριθμούς που χρειαζόμαστε. Convert a Date/Time

Μετά πάμε Navicat, βρίσκουμε το Table "Castle" και αντικατάσταση τους αριθμούς με κόκκινο.

UPDATE `castle` SET siegeDate = '1329678000000' WHERE id = '1';
Το ίδιο και στα 8 υπόλοιπα.

 

Ε. Όταν πάω να τρέξω το Build στο Eclipse, παίρνω Build Failed, τι κάνω?

Α. Τσέκαρε αν σου λέει ότι π.χ το L2PcInstance.java έχει error σε κάποιο line του. Αν έχει, πήγαινε εκεί που σου λέει και κοίταξε το error που παίρνεις. (Θα είναι με κόκκινο). Αν όμως λέει για version, κάνε μία εγκατάσταση Subversion από εδώ. Αλλιώς, βάλε μία πιο καινούρια έκδοση του Eclipse αν είναι παλιά.

 

Ε. Έχω πρόβλημα με το Menu ενός NPC, θέλω να αλλάξω αυτά που λέει μέσα. Που πηγαίνω?

Α. Πρέπει να πας στο gameserver/data/html και να ψάξεις το NPC που θέλεις. Οτιδήποτε θέλεις να αλλάξεις, είναι εκεί. Δες με "κόκκινο" το παράδειγμα παρακάτω:

<html><title>μπλα μπλα</title><body><center>
Welcome, <font color="LEVEL">%charname%</font>!<br>
Here is the list of all available effects:<br>
<img src="L2UI_CH3.onscrmsg_pattern01_2" width=300 height=32 align=left>

 

Ε. Θέλω να αλλάξω χρώμα στο Enchant των Weapon. Πως το κάνω?

Α. Δείτε ένα αναλυτικό οδηγό, όπου θα σας βοηθήσει με αυτό που ζητάτε. Πώς να αλλάξετε το χρώμα στο enchant + Πώς να βρείτε οτι colour θέλετε.

 

Ε. Έχω τα Source ενός Project, πως μπορώ να τα βάλω στο Eclipse?

Α. Πήγαινε Eclipse->File->Import->General-->Existing Projects into Workspace, και από εκεί βρείτε που είναι τα Source σας και θα μπουν στο Eclipse.

 

Ε. Θέλω να βάλω Custom Zones στον Server μου. Μπορείτε να με βοηθήσετε?

Α. Πάτησε το "show" για να δεις την λύση.



Αφού διαλέξαμε το μέρος που θέλουμε, πατάμε μέσα στο παιχνίδι " /loc ", και θα μας εμφανίσει στο Chat τις συντεταγμένες.

 

Πηγαίνουμε navicat, και μπαίνουμε μέσα στο Table που λέει "Teleport". Εκεί θα δείτε πολλές λίστες από spawn που υπάρχουν.

Πηγαίνουμε στην τελευταία σειρά, και κάνουμε "add" μία δική μας. (Add κάνουμε με την ένδειξη "+"). Κοιτάμε από την πάνω σειρά πως ακριβώς πάει το πράγμα, και αρχίζουμε να γράφουμε.

ID θα βάζουμε έναν τουλάχιστον 5ψήφιο αριθμό, για να μην χαλάσουμε τυχόν υπάρχον σειρές με αυτό το ID.

Και απλά μετά αλλάζουμε το location, και βάζουμε όνομα ένα όποιο θέλουμε!

Αφού το κάναμε αυτό, τώρα μας μένει να πάμε στα αρχεία της Gatekeeper μας (Gameserver/data/html/teleporter) να την κάνουμε επεξεργασία εκεί που θέλουμε, να προσθέσουμε σειρές. Π.χ αν στην υπάρχον Farm Zone, η σειρά είναι έτσι:

<tr><td><a action="bypass -h npc_%objectId%_goto 9050"><font color="LEVEL">Fortress of the dead</font></a></td></tr>

Εμείς αλλάζουμε, όπου "9050", το ID που βάλαμε στην Navicat. Και όπου "Fortress of the dead" Το όνομα από την Zone που θέλουμε να γράφει η Gatekeeper! Και γίνεται κάπως έτσι:

<tr><td><a action="bypass -h npc_%objectId%_goto 99999"><font color="LEVEL">Farm Zone 1</font></a></td></tr>

 

 

Ε. Θέλω την τάδε Buffer/Gatekeeper/Gm Shop κτλπ. ή χρειάζομαι κάποιο έτοιμο Project. Μπορείτε να μου δώσετε κάποιο?

Α. Δες μία συλλογή με πολλά από αυτά που θέλεις και θα βρεις σίγουρα αυτό που ψάχνεις. [Συλλογή]Διάφορα Από Guides/shares. Για Ότι Ψάχνεις, Μπες Εδώ.

 

Ε. Έχω Git URL, πως μπορώ να πάρω τα αρχεία του Project?

Α. Στην σελίδα L2J Server, υπάρχει οδηγός για το πως να περάσεις το Git URL στο Eclipse..

http://www.l2jserver...tarted-advanced Επιλέγεις την κατηγορία <Get Started> και επιλέγεις το <The Hard Way> για να δεις την οδηγό.

 

=========================================================================================

 

Ε. Πως μπορώ να βρω ποια L2Projects υπάρχουν τριγύρω, και να τα κατεβάσω χωρίς να κάνω compile? Υπάρχει κάποιο Share?

Α. Ρίξε μια ματιά σε αυτό το share. [Some Ready(Compiled) L2J Sources]

 

Προσοχή! Σε περίπτωση που χρησιμοποιείτε κάποιο Project που δεν έχετε τα Source του, δεν θα παίρνετε βοήθεια, αφού και οι ίδιοι θα καταλάβετε στην πορεία, πως είναι ένα τελείως άχρηστο Project, αφού δεν μπορούμε να φτιάξουμε κάποια πράγματα που χρειάζονται Java Code.

Στα Project που δεν έχουν Source, δεν μπορούμε να κάνουμε την οποιαδήποτε αλλαγή στα java! Είναι απλά έτοιμα αρχεία!!!

Θα χαλάσετε άδικα τον χρόνο σας, αφού με το πρώτο πρόβλημα/bug που θα βρεθεί, η λύση θα είναι καθαρά σε Java code!

 

Ελπίζω να δόθηκαν μερικές λύσεις από κάποιο πρόβλημα που έχετε, χωρίς να χρονοτριβείτε περιμένοντας για απάντηση, αλλά ούτε να γεμίζουμε το Section με τα ίδια ερωτήματα!

4 answers to this question

Recommended Posts

  • 0
Posted

πολυ καλη δουλεια, μου ελυσες τα χερια με κατι τσαμπα tryhards που εριχνα με npc's στο Acis και το navicat.Χωρις να εχω κανενα απολυτως θεμα με τα αγγλικα, ομολογω οτι δυσκολευομαι να βρω to-the-point tutorials στο Acis.Ισως σαν free member να δικαιολογειται, αν και πιστευω οτι υπαρχει ελειψη ακομα και σε βασικα πραγματα τα οποια βρισκεις μεν να αιωρουνται σε διαφορα topics κατα τυχη, αλλα δεν βρισκεις ολοκληρωμενα guides για περαιτερω edits απαξ και εστησες τον server.
Προσωπικα λοιπον σε ευχαριστω ξανα, γιατι εστω και με καποια αναφορικα στοιχεια που εδωσες στον παραπανω οδηγο, ηταν αρκετα για να με ξεμπλοκαρουν.

  • 0
Posted

Χαίρομαι που σε βοήθησε και μπόρεσες να ξεμπλοκάρεις το "πρόβλημα" που είχες.. 

Όσο για τα tutorials στο acis, αν εννοείς για το section εδώ στο maxcheaters και όχι για το forum του project, να ξέρεις ότι δεν υπάρχουν κάποιοι συγκεκριμένοι οδηγοί εδώ, πέραν τα διάφοα topics όπως είπες. Ωστόσο και σαν free member, δεν βλέπεις κάτι λιγότερο.

 

Καλή συνέχεια φίλε.

  • 0
Posted

kalispera polu wraio to post sou eidika gia new se auta san emena!! na sou kanw mia extra erwthsh?? etsi opws skaliza ta settings sto gameserver config kati allaksa kai ta mobs exoun ginei invicible

l2jFrozen einai ta arxeia! ksereis ti borei na einai?? exw faei ton topo alla tpt!!!

  • 0
Posted

Καλησπέρα ,το θεμα με τα dublicate items ? δουλευω σε l2jfrozen και δεν γνωριζω πως να το αποφυγω ... μπορεις να μου δωσεις κατι?

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
Answer this question...

×   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.

×
×
  • Create New...