diff --git a/src/elements/prti.c b/src/elements/prti.c index 30f86aedf..c20611519 100644 --- a/src/elements/prti.c +++ b/src/elements/prti.c @@ -41,32 +41,28 @@ int update_PRTI(UPDATE_FUNC_ARGS) { } } - - if (fe) { + if (fe || parts[i].life || parts[i].ctype) { int orbd[4] = {0, 0, 0, 0}; //Orbital distances int orbl[4] = {0, 0, 0, 0}; //Orbital locations if (!parts[i].life) parts[i].life = rand(); if (!parts[i].ctype) parts[i].ctype = rand(); orbitalparts_get(parts[i].life, parts[i].ctype, orbd, orbl); for (r = 0; r < 4; r++) { - if (orbd[r]>1) { + if (orbd[r]>12) { orbd[r] -= 12; - if (orbd[r]<1) { + orbl[r] += 2; + orbl[r] = orbl[r]%255; + } else { + if (fe) { orbd[r] = (rand()%128)+128; orbl[r] = rand()%255; - } else { - orbl[r] += 2; - orbl[r] = orbl[r]%255; } - } else { - orbd[r] = (rand()%128)+128; - orbl[r] = rand()%255; + else { + orbd[r] = orbl[r] = 0; + } } } orbitalparts_set(&parts[i].life, &parts[i].ctype, orbd, orbl); - } else { - parts[i].life = 0; - parts[i].ctype = 0; } return 0; } diff --git a/src/elements/prto.c b/src/elements/prto.c index 46c7250a9..1fb410570 100644 --- a/src/elements/prto.c +++ b/src/elements/prto.c @@ -62,30 +62,30 @@ int update_PRTO(UPDATE_FUNC_ARGS) { } } } - if (fe) { + + if (fe || parts[i].ctype) { int orbd[4] = {0, 0, 0, 0}; //Orbital distances int orbl[4] = {0, 0, 0, 0}; //Orbital locations - if (!parts[i].life) parts[i].life = rand(); - if (!parts[i].ctype) parts[i].life = rand(); + if (!parts[i].life || !(~parts[i].life)) parts[i].life = rand(); + if (!parts[i].ctype) parts[i].ctype = rand(); orbitalparts_get(parts[i].life, parts[i].ctype, orbd, orbl); for (r = 0; r < 4; r++) { - if (orbd[r]<254) { + if (orbd[r]<239) { orbd[r] += 16; - if (orbd[r]>254) { - orbd[r] = 0; - orbl[r] = rand()%255; - } //orbl[r] += 1; //orbl[r] = orbl[r]%255; } else { - orbd[r] = 0; - orbl[r] = rand()%255; + if (fe) { + orbd[r] = 0; + orbl[r] = rand()%255; + } + else { + orbd[r] = 255; + orbl[r] = 0; + } } } orbitalparts_set(&parts[i].life, &parts[i].ctype, orbd, orbl); - } else { - parts[i].life = 0; - parts[i].ctype = 0; } return 0; }