maikel371
%Europe/Berlin %630 %2009, 16:07
ik heb een module voor een rijschool met verschillende pakketten en prijzen.
nu is de bedoeling dat als je op een knop duwt het pakket veranderd.
hij rekend goed en de tween doet het allemaal maar alleen het pakket veranderd niet
, de tekst kom uit een txt file.
zie bijlage
import mx.transitions.Tween;
var prijzen:Array = [];
var kortingen:Array = [2, 2.5, 3, 3.5];
var lessen:Array = [];
var variabeleprijs:Array = [];
var pakketten = [];
var pakket = [];
var totaalprijs:Array = [];
//Loadvar
var prijzenLader:LoadVars = new LoadVars();
prijzenLader.load("prijzen.txt");
prijzenLader.onLoad = function(success) {
if (success) {
//geladen
initPrijsArray(variabeleprijs,4,"prijspakket");
initPrijsArray(lessen,4,"lessen");
initPrijsArray(prijzen,5,"prijsoptie");
initPrijsArray(pakketten,20,"pakket");
init();
} else {
//fout
trace("fout bij laden tekst bestand");
}
};
//array function
function initPrijsArray(arrayName, lengteArray, string) {
var __reg1 = 1;
for (; ; ) {
if (__reg1>lengteArray) {
return;
}
arrayName[__reg1-1] = Number(prijzenLader[string+__reg1]);
++__reg1;
}
}
function init() {
var aantalkolommen:Number = 8;
var aantalrijen:Number = 4;
var totaalprijs:Array = variabeleprijs;
var pakket = pakketten;
var korting:Boolean = false;
function verhoogPrijs(totaal:Number, prijs:Number) {
totaal += prijs;
return totaal;
}
function kortingPrijs(totaal:Number, korting:Number) {
var prijsmetkorting:Number;
prijsmetkorting = (totaal/100)*korting;
return prijsmetkorting;
}
for (var i = 0; i<aantalrijen; i++) {
initPrijsArray(prijzen,5,"prijsoptie");
var les:Number = lessen[i];
var prijs:Number = variabeleprijs[i];
prijzen.unshift(prijs);
prijzen.unshift(les);
totaalprijs[i] = verhoogPrijs(totaalprijs[i], prijzen[2]);
for (var n = 0; n<aantalkolommen; n++) { // buttons alpha + prijs
if (n == 0) {
this["rij"+i+"_mc"]["txtInhoud"+n].text = prijzen[n];
} else if (n == 1) {
this["rij"+i+"_mc"]["txtInhoud"+n].text = "€"+prijzen[n]+",-";
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].prijs = prijzen[n];
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].i = i;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"]._alpha = 50;
} else if (n == 7) {
this["rij"+i+"_mc"]["txtInhoud"+n].text = kortingen[i]+"% korting";
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].korting = kortingen[i];
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].i = i;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"]._alpha = 50;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].activated = false;
} else {
this["rij"+i+"_mc"]["txtInhoud"+n].text = "€ "+prijzen[n]+" ,-";
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].prijs = prijzen[n];
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].i = i;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"]._alpha = 50;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].activated = false;
if (i == 0) {
z = __reg4-2;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[z];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[0];
} else {
if (i == 1) {
q = __reg4+3;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[q];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[5];
} else {
if (i == 2) {
w = __reg4+8;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[w];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[10];
} else {
if (i == 3) {
e = __reg4+13;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[e];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[15];
}
}
}
}
}
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].onRelease = function() {
var array:Array = String(this).split(".");
if (this._alpha == 100 && array[2] != "optie4_mc") {
new Tween(this, "_alpha", none, this._alpha, 50, 0.3, true);
totaalprijs[this.i] -= this.prijs;
if ((__reg0 = this.pakket) === "Pakket 2")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 3")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 4")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 5")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 7")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 8")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 9")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 10")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 12")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 13")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 14")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 15")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 17")
{
pakket[this.i] = "Pakket 4";
}
else
{
if (__reg0 === "Pakket 18")
{
pakket[this.i] = "Pakket 4";
}
else
{
if (__reg0 === "Pakket 19")
{
pakket[this.i] = "Pakket 4";
}
else
{
if (__reg0 === "Pakket 20")
{
pakket[this.i] = "Pakket 4";
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
this.activated = false;
} else if (this._alpha<=50 && array[2] != "optie4_mc") {
new Tween(this, "_alpha", none, this._alpha, 100, 0.3, true);
this.activated = true;
totaalprijs[this.i] += this.prijs;
if (this._parent.optie3_mc.activated) {
for (var p = 0; p<3; p++) {
new Tween(this._parent["optie"+p+"_mc"], "_alpha", none, this._parent["optie"+p+"_mc"]._alpha, 50, 0.3, true);
if (this._parent["optie"+p+"_mc"].activated) {
totaalprijs[this.i] -= this._parent["optie"+p+"_mc"].prijs;
this._parent["optie"+p+"_mc"].activated = false;
}
}
} else {
this.activated = true;
}
}
if ((!this._parent.optie0_mc.activated || !this._parent.optie1_mc.activated || !this._parent.optie2_mc.activated) && !this._parent.optie3_mc.activated && this._parent.optie4_mc.activated) {
trace(this._parent.optie4_mc.activated);
trace("turn off");
trace(this._parent.optie4_mc._alpha);
new Tween(this._parent.optie4_mc, "_alpha", none, this._parent.optie4_mc._alpha, 50, 0.3, true);
this._parent.optie4_mc.activated = false;
korting = false;
trace(this._parent.optie4_mc._alpha);
}
if (korting == false) {
this._parent.txtTotaal.text = "€ "+totaalprijs[this.i]+" ,-";
} else {
trace(this.i);
trace(totaalprijs[this.i]);
trace(totaalprijs[1]);
trace(this.korting+"%");
this._parent.txtTotaal.text = "€ "+(totaalprijs[this.i]-Math.round(kortingPrijs(totaalprijs[this.i], Number(this.korting))*100)/100)+" ,-";
}
};
this["rij"+i+"_mc"].txtTotaal.text = "€ "+totaalprijs[i]+" ,-";
}
this["rij"+i+"_mc"].optie4_mc.onRelease = function() {
trace("test");
if (this._parent.optie0_mc.activated && this._parent.optie1_mc.activated && this._parent.optie2_mc.activated || this._parent.optie3_mc.activated) {
trace("test");
if (this._alpha == 100) {
new Tween(this, "_alpha", none, this._alpha, 50, 0.3, true);
this.activated = false;
korting = false;
} else if (this._alpha<=50) {
new Tween(this, "_alpha", none, this._alpha, 100, 0.3, true);
this.activated = true;
korting = true;
}
if (korting == false) {
this._parent.txtTotaal.text = "€ "+totaalprijs[this.i]+" ,-";
} else {
trace(this.korting+"%");
this._parent.txtTotaal.text = "€ "+(totaalprijs[this.i]-Math.round(kortingPrijs(totaalprijs[this.i], Number(this.korting))*100)/100)+" ,-";
}
}
};
}
for (var n = 2; n<aantalkolommen; n++) {
this["hdr"+(n-2)+"_mc"].txtPrijs.htmlText = "<b>€</b> "+prijzen[n]+" ,-</b>";
}
}
wie kan mij z.s.m. helpen ??
nu is de bedoeling dat als je op een knop duwt het pakket veranderd.
hij rekend goed en de tween doet het allemaal maar alleen het pakket veranderd niet
, de tekst kom uit een txt file.
zie bijlage
import mx.transitions.Tween;
var prijzen:Array = [];
var kortingen:Array = [2, 2.5, 3, 3.5];
var lessen:Array = [];
var variabeleprijs:Array = [];
var pakketten = [];
var pakket = [];
var totaalprijs:Array = [];
//Loadvar
var prijzenLader:LoadVars = new LoadVars();
prijzenLader.load("prijzen.txt");
prijzenLader.onLoad = function(success) {
if (success) {
//geladen
initPrijsArray(variabeleprijs,4,"prijspakket");
initPrijsArray(lessen,4,"lessen");
initPrijsArray(prijzen,5,"prijsoptie");
initPrijsArray(pakketten,20,"pakket");
init();
} else {
//fout
trace("fout bij laden tekst bestand");
}
};
//array function
function initPrijsArray(arrayName, lengteArray, string) {
var __reg1 = 1;
for (; ; ) {
if (__reg1>lengteArray) {
return;
}
arrayName[__reg1-1] = Number(prijzenLader[string+__reg1]);
++__reg1;
}
}
function init() {
var aantalkolommen:Number = 8;
var aantalrijen:Number = 4;
var totaalprijs:Array = variabeleprijs;
var pakket = pakketten;
var korting:Boolean = false;
function verhoogPrijs(totaal:Number, prijs:Number) {
totaal += prijs;
return totaal;
}
function kortingPrijs(totaal:Number, korting:Number) {
var prijsmetkorting:Number;
prijsmetkorting = (totaal/100)*korting;
return prijsmetkorting;
}
for (var i = 0; i<aantalrijen; i++) {
initPrijsArray(prijzen,5,"prijsoptie");
var les:Number = lessen[i];
var prijs:Number = variabeleprijs[i];
prijzen.unshift(prijs);
prijzen.unshift(les);
totaalprijs[i] = verhoogPrijs(totaalprijs[i], prijzen[2]);
for (var n = 0; n<aantalkolommen; n++) { // buttons alpha + prijs
if (n == 0) {
this["rij"+i+"_mc"]["txtInhoud"+n].text = prijzen[n];
} else if (n == 1) {
this["rij"+i+"_mc"]["txtInhoud"+n].text = "€"+prijzen[n]+",-";
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].prijs = prijzen[n];
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].i = i;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"]._alpha = 50;
} else if (n == 7) {
this["rij"+i+"_mc"]["txtInhoud"+n].text = kortingen[i]+"% korting";
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].korting = kortingen[i];
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].i = i;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"]._alpha = 50;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].activated = false;
} else {
this["rij"+i+"_mc"]["txtInhoud"+n].text = "€ "+prijzen[n]+" ,-";
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].prijs = prijzen[n];
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].i = i;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"]._alpha = 50;
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].activated = false;
if (i == 0) {
z = __reg4-2;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[z];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[0];
} else {
if (i == 1) {
q = __reg4+3;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[q];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[5];
} else {
if (i == 2) {
w = __reg4+8;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[w];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[10];
} else {
if (i == 3) {
e = __reg4+13;
this["rij"+i+"_mc"]["optie"+(__reg4-3)+"_mc"].pakket = "Pakket "+pakket[e];
this["rij"+i+"_mc"].txtPakketnaam.text = "Pakket "+pakket[15];
}
}
}
}
}
this["rij"+i+"_mc"]["optie"+(n-3)+"_mc"].onRelease = function() {
var array:Array = String(this).split(".");
if (this._alpha == 100 && array[2] != "optie4_mc") {
new Tween(this, "_alpha", none, this._alpha, 50, 0.3, true);
totaalprijs[this.i] -= this.prijs;
if ((__reg0 = this.pakket) === "Pakket 2")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 3")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 4")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 5")
{
pakket[this.i] = "Pakket 1";
}
else
{
if (__reg0 === "Pakket 7")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 8")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 9")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 10")
{
pakket[this.i] = "Pakket 2";
}
else
{
if (__reg0 === "Pakket 12")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 13")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 14")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 15")
{
pakket[this.i] = "Pakket 3";
}
else
{
if (__reg0 === "Pakket 17")
{
pakket[this.i] = "Pakket 4";
}
else
{
if (__reg0 === "Pakket 18")
{
pakket[this.i] = "Pakket 4";
}
else
{
if (__reg0 === "Pakket 19")
{
pakket[this.i] = "Pakket 4";
}
else
{
if (__reg0 === "Pakket 20")
{
pakket[this.i] = "Pakket 4";
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
this.activated = false;
} else if (this._alpha<=50 && array[2] != "optie4_mc") {
new Tween(this, "_alpha", none, this._alpha, 100, 0.3, true);
this.activated = true;
totaalprijs[this.i] += this.prijs;
if (this._parent.optie3_mc.activated) {
for (var p = 0; p<3; p++) {
new Tween(this._parent["optie"+p+"_mc"], "_alpha", none, this._parent["optie"+p+"_mc"]._alpha, 50, 0.3, true);
if (this._parent["optie"+p+"_mc"].activated) {
totaalprijs[this.i] -= this._parent["optie"+p+"_mc"].prijs;
this._parent["optie"+p+"_mc"].activated = false;
}
}
} else {
this.activated = true;
}
}
if ((!this._parent.optie0_mc.activated || !this._parent.optie1_mc.activated || !this._parent.optie2_mc.activated) && !this._parent.optie3_mc.activated && this._parent.optie4_mc.activated) {
trace(this._parent.optie4_mc.activated);
trace("turn off");
trace(this._parent.optie4_mc._alpha);
new Tween(this._parent.optie4_mc, "_alpha", none, this._parent.optie4_mc._alpha, 50, 0.3, true);
this._parent.optie4_mc.activated = false;
korting = false;
trace(this._parent.optie4_mc._alpha);
}
if (korting == false) {
this._parent.txtTotaal.text = "€ "+totaalprijs[this.i]+" ,-";
} else {
trace(this.i);
trace(totaalprijs[this.i]);
trace(totaalprijs[1]);
trace(this.korting+"%");
this._parent.txtTotaal.text = "€ "+(totaalprijs[this.i]-Math.round(kortingPrijs(totaalprijs[this.i], Number(this.korting))*100)/100)+" ,-";
}
};
this["rij"+i+"_mc"].txtTotaal.text = "€ "+totaalprijs[i]+" ,-";
}
this["rij"+i+"_mc"].optie4_mc.onRelease = function() {
trace("test");
if (this._parent.optie0_mc.activated && this._parent.optie1_mc.activated && this._parent.optie2_mc.activated || this._parent.optie3_mc.activated) {
trace("test");
if (this._alpha == 100) {
new Tween(this, "_alpha", none, this._alpha, 50, 0.3, true);
this.activated = false;
korting = false;
} else if (this._alpha<=50) {
new Tween(this, "_alpha", none, this._alpha, 100, 0.3, true);
this.activated = true;
korting = true;
}
if (korting == false) {
this._parent.txtTotaal.text = "€ "+totaalprijs[this.i]+" ,-";
} else {
trace(this.korting+"%");
this._parent.txtTotaal.text = "€ "+(totaalprijs[this.i]-Math.round(kortingPrijs(totaalprijs[this.i], Number(this.korting))*100)/100)+" ,-";
}
}
};
}
for (var n = 2; n<aantalkolommen; n++) {
this["hdr"+(n-2)+"_mc"].txtPrijs.htmlText = "<b>€</b> "+prijzen[n]+" ,-</b>";
}
}
wie kan mij z.s.m. helpen ??