CMI 5.00 Addons Tutorial
------------------------
How to create CMI Addons
------------------------
German
------

Basis Befehle :

- Installations Balken machst du mit folgenden Befehl :
CMI.install(wert,text) / anstatt wer gibst du eine Zahl von -183 bis 98 ein. Das ist die fortschrittsleiste. -183 ist 0 und 98 ist 100. Anstatt Text gibst du deinen Installations Text ein. Beispiel:

CMI.install(-183,"Installation") / das whre jetzt ein Beispiel, wo der Balken nicht zu sehen wre. Hier ein Komplette Installations beispiel :

CMI.install(-183,"Installation")
System.copyFile("ms0:/blabla.prx","ms0:/PSP/blabla.prx",0)
CMI.install(-43,"Installation")
System.copyFile("ms0:/blablu.prx","ms0:/PSP/blablu.prx",0)
CMI.install(32,"Instalaltion")
System.copyFile("ms0:/blabli.prx","ms0:/PSP/blabli.prx",0)
CMI.install(98,"Installation") //wie man sieht wird nach dem copy befehl der fortschritsbalken erhht bis er am ende bei 98 angelangt ist, easy, oder ? 

----

- CMI Backround ( CMI Hintergrund Bild )
CMI.bg() / das wars auch schon ;) hier msst ihr nichts ndern. Somit bekommt ihr den CMI Backround

----

- Das Addon selbst ausfhren 
dofileme() / damit kannst du dein Addon erneut aufrufen. Sehr ntzlich falls euer Addon Mens hat. Mit diesem Befehl komtm ihr ganz einfach in euer Main Men

----

- Zu CMI zurckkehren
back() / dieser befehl Startet CMI

----

- Auf die Einstellungen zugreifen
CMI.getconfigs() / mit diesem befehl ladet ihr die Einstellungen die man in CMI einstellen kann.

----

- Password abfrage 
CMI.security() / In CMI 5.0 gibt es ja die neue Funtkion CMI Security. Diese Funktion kann man auch bei Addons benutzen. Hat der benutzer CMI Security eingeschalten wird er nach dem Password gefragt. Der befehl gibt True oder False zurck ob das password richtig oder falsch ist. Beispiel

CMI.getconfigs()
CMI.security()
if password == true then
-- wenn das password richtig ist passiert ...
end
if password == false then
-- Wenn das password falsch ist passiert 
CMI.security() -- Ein beispiel, ruft die Password eingabe nochmal auf. Das geht dann so lange weiter bis das Passwort korrekt ist
end

----

- CMI Fenster ( Warn, Info Fenster, sowie bei dem Quickbar-Menu )
CMI.msg() / text position verwendest du : 107,96 ( oberste Position )

----

- CMI Bar
CMI.bar() / farbe wird von einstellungen automatisch bernommen

----

- CMI Men Style
CMI.drawmenu(position,text) / bei Position Zahl zwischen 0-480 einfgen. So kannst du den Text am besten mittig setzen ;) Bei Text den Men Namen eingeben. Hier wieder ein Beispiel:

CMI.drawmenu(200,"Mein Addon Menue")  / CMI.bg() ersparst du dir, das ist bei diesem befehl automatisch dabei ;)

----

- Sprache abfragen
if language == "de" then        / Weil CMI ja zweisprachig ist kannst du auch die Addons zweisprachig coden. Das ist der ganze befehl, vorher musst du nichts laden, auch kein CMI.getconfigs()
-- falls deutsch 
end

if language == "en" then
-- falls englisch
end


----

Komplettes im CMI Style Men erstellen :



modus = 1
oldpad = Controls.read()
while true do
CMI.drawmenu(200,"Test Menue")
if modus==1 then
screen:fontPrint(klein,70,50,"=> Eins", red)
screen:fontPrint(klein,70,66,"Zwei", white)
screen:fontPrint(klein,70,82,"Drei", white)
screen:fontPrint(klein,70,98,"Vier", white)
screen:fontPrint(klein,70,114,"Zurueck", white) 
screen:fontPrint(klein,1,250,"Beschreibung zu Eins", white)
screen.flip()
screen.waitVblankStart(0)
elseif modus == 2 then
screen:fontPrint(klein,70,50,"Eins", white)
screen:fontPrint(klein,70,66,"=> Zwei", red)
screen:fontPrint(klein,70,82,"Drei", white)
screen:fontPrint(klein,70,98,"Vier", white)
screen:fontPrint(klein,70,114,"Zurueck", white)
screen:fontPrint(klein,1,250,"Beschreibung zu Zwei", white)
screen.flip()
screen.waitVblankStart(0)
elseif modus == 3 then
screen:fontPrint(klein,70,50,"Eins", white)
screen:fontPrint(klein,70,66,"Zwei", white)
screen:fontPrint(klein,70,82,"=> Drei", red)
screen:fontPrint(klein,70,98,"Vier", white)
screen:fontPrint(klein,70,114,"Zurueck", white)
screen:fontPrint(klein,1,250,"Beschreibung zu Drei", white)
screen.flip()
screen.waitVblankStart(0)
elseif modus == 4 then
screen:fontPrint(klein,70,50,"Eins", white)
screen:fontPrint(klein,70,66,"Zwei", white)
screen:fontPrint(klein,70,82,"Drei", white)
screen:fontPrint(klein,70,98,"=> Vier", red)
screen:fontPrint(klein,70,114,"Zurueck", white)
screen:fontPrint(klein,1,250,"Beschreibung zu Vier", white)
screen.flip()
screen.waitVblankStart(0)
elseif modus == 5 then
screen:fontPrint(klein,70,50,"Eins", white)
screen:fontPrint(klein,70,66,"Zwei", white)
screen:fontPrint(klein,70,82,"Drei", white)
screen:fontPrint(klein,70,98,"Vier", white)
screen:fontPrint(klein,70,114,"Zurueck", red)
screen:fontPrint(klein,1,250,"Beschreibung zu Zurueck", white)
screen.flip()
screen.waitVblankStart(0)
end


pad = Controls.read()

if pad:up() and oldpad:up()~=pad:up() then 
if modus==1 then
modus=5
elseif modus==2 then
modus=1 
elseif modus==3 then
modus=2
elseif modus==4 then
modus=3 
elseif modus==5 then
modus=4
end
end

if pad:down() and oldpad:down()~=pad:down() then
if modus==1 then 
modus=2
elseif modus==2 then
modus=3
elseif modus==3 then
modus=4
elseif modus==4 then
modus=5
elseif modus==5 then
modus=1
end
end


if pad:cross() and oldpad:cross()~=pad:cross() then

if modus == 5 then
-- Hier was passieren soll bei Klicken des Men Punktes Zurueck
end

if modus == 1 then
-- Hier was passieren soll bei Klicken des Men Punktes Eins
end

if modus == 2 then
-- Hier was passieren soll bei Klicken des Men Punktes zwei
end

if modus == 3 then
-- Hier was passieren soll bei Klicken des Men Punktes Drei
end

if modus == 4 then
-- Hier was passieren soll bei Klicken des Men Punktes Vier
end


end
oldpad = pad
end



---

Den Rest kann man ganz einfach in Lua Coden ;)

Viel Spa

PS. Ich habe noch ein Open Source Addon beigelegt um sich nochmal einen berblcik machen zu knnen.


Euer
Namenloser
