Es una bovada pero no m sale (especie de carnicero)
Lo q quiero acer es q tu llegues, hablas con el carnicero y te pregunte si quieres vender la carne q tienes, al decirle sí, se tiene q llevar toda la carne y darte 5 monedas por pieza. (El tag de la carne es RawMeat). yo he probado con esto: [code:1:a8538e0576]void main() { object oPC = GetPCSpeaker(); object oItem; oItem = GetItemPossessedBy(oPC, “RawMeat”); while (GetIsObjectValid(oItem)==TRUE){ DestroyObject(oItem, 0.0); oItem = GetItemPossessedBy(oPC, “RawMeat”); GiveGoldToCreature(oPC, 5); } }[/code:1:a8538e0576] Pero segun parece el bucle se repite indefinidamente hasta q se desborda, le da unas 38k monedas al pj por un solo trozo de carne. :S Gracias por la ayuda.
Activos en NWN
Los más activos en Scripting
Subforos
Neverwinter Nights
[quote:49bfef29df]
oItem = GetItemPossessedBy(oPC, “RawMeat”);
[/quote:49bfef29df]
pq identificas dos veces la variable dos veces??
Lo pongo dos veces pq se destruye, entonces tengo q volver a declararlo pues la primera es pa q lo tenga el qhile, la segunda para q vaya cogiendo el siguiente o por lo menos esa es mi opinion, de todas maneras va mal.
claro que ira mal…., noe s mejor con un if?
while Getisobjectvalid(opc, rawmeat)
{
if (GetItempossesedby(opc, “rawmeat”))
givegoldtocreature….
detroyobject….
}}
[code:1:6218634556]//para mi la mejor manera de realizarlo.
//funciona a la perfeccion ( lo hago de memoria que toy en el insti )
void main()
{
object oPC=GetPCSpeaker(); //si es una conversacion.
object oItem=GetFirstItemInInventory();
string sString="RawMeat";
int nGold=5;
while(GetIsObjectValid(oItem)==TRUE)
{
if(GetTag(oItem)==sString) {
DestroyObject(oItem);
GiveGoldToCreature(oPC,nGold);
}
oItem=GetNextItemInInventory(); //No recuerdo si era asi
//comprueba si se llama asi
// la funcion.
}
}
//mi consejo es cambiar sString="RawMeat" por sString="MEAT" y el tag poniendolo en mayusculas con GetUpperCase o algo parecido y usando FindSubString() sera mucho mas facil para detectar todas las tags de los items. Yo uso este sistema en muchas cosas como en la creacion de cadaveres despues de matar a los NPC, armas rotas armaduras rotas y escudos, son sistemas en los que puedes usarlo.[/code:1:6218634556]