| 10-09-2006, 08:35 AM | #1 |
Well, im in WEU's map script, and i've found the "Save load" code trigger, now all I need to do is set Notes[Player Numbre Of P] = Final But it comes up with invalid argument type (player) this is code, THE only thing I have touched is adding my "Notes" trigger, nothing else JASS:set Final = ColorHeroCode(AddScores(AssembleCode(AssembleCode(Code)))) set udg_Notes[Player(P)] = Final call DisplayTimedTextToPlayer(P,0,0,300,Final) Final is the string above it I wanna store Final into udg_notes[Player Number Of P] I got the idea that I could do that, cus the text it displays it to P So if call DisplayTimedTextToPlayer(P,0,0,300,Final) will work... Then why wont set udg_Notes[Player(P)] = Final I dont understand lol can anyone help |
| 10-09-2006, 08:42 AM | #2 |
ColorHeroCode? |
| 10-09-2006, 08:49 AM | #3 |
You asked for it, I cant explain it:P heres the whole code section of that part JASS:function SaveHeroData takes unit U, player P returns nothing local integer Id = GetUniqueEinheitsnummer(U) local string Code = "" local integer XP local integer X local integer Y local integer Life local integer Mana local integer Agi local integer Str local integer Int local integer Gold local integer Lumber local integer Uid local string Final local string pname local integer Counter = 0 if IsUnitType(U,UNIT_TYPE_HERO) == false then return endif if udg_zz_SaveLoadSettings[6] then set pname = GetPlayerName(P) if GetLength(pname) < 5 then set Counter = 5 - GetLength(pname) set pname = SubStringBJ(pname,1,GetLength(pname)) loop set pname = pname + "Q" set Counter = Counter - 1 exitwhen Counter <= 0 endloop else set pname = SubStringBJ(pname,1,5) endif set Code = pname set Code = Code + DebugIdInteger2IdString(GetUnitTypeId(U)) else set Code = DebugIdInteger2IdString(GetUnitTypeId(U)) endif set XP=GetHeroLevel(U) if XP>99999 then set XP=99999 elseif XP<1 then set XP=1 endif set Code=Code+Int2CodeStr(XP,5) if udg_zz_SaveLoadSettings[0] then set X = R2I(GetUnitX(U)) set Y = R2I(GetUnitY(U)) if X < - 50000 then set X = - 50000 endif if X >= 50000 then set X = 49999 endif set X = X + 50000 if Y < - 50000 then set Y = - 50000 endif if Y >= 50000 then set Y = 49999 endif set Y = Y + 50000 set X = X / 100 set Y = Y / 100 set Code = Code + Int2CodeStr(X,3) set Code = Code + Int2CodeStr(Y,3) endif if udg_zz_SaveLoadSettings[1] then set Life = R2I(GetUnitLifePercent(U) - 1) set Mana = R2I(GetUnitManaPercent(U) - 1) if Life <= 0 then set Life = 0 endif if Mana < 0 then set Mana = 0 endif set Code = Code + Int2CodeStr(Life,2) set Code = Code + Int2CodeStr(Mana,2) endif if udg_zz_SaveLoadSettings[2] then set Str = GetHeroStatBJ(bj_HEROSTAT_STR,U,false) set Agi = GetHeroStatBJ(bj_HEROSTAT_AGI,U,false) set Int = GetHeroStatBJ(bj_HEROSTAT_INT,U,false) if Agi > 99 then set Agi = 99 endif if Str > 99 then set Str = 99 endif if Int > 99 then set Int = 99 endif set Code = Code + Int2CodeStr(Str,2) set Code = Code + Int2CodeStr(Agi,2) set Code = Code + Int2CodeStr(Int,2) endif if udg_zz_SaveLoadSettings[3] then set Gold = GetPlayerState(GetOwningPlayer(U),PLAYER_STATE_RESOURCE_GOLD) set Lumber = GetPlayerState(GetOwningPlayer(U),PLAYER_STATE_RESOURCE_LUMBER) if Gold > 99999 then set Gold = 99999 endif if Lumber > 99999 then set Lumber = 99999 endif set Gold = Gold / 10 set Lumber = Lumber / 10 set Code = Code + Int2CodeStr(Gold,4) set Code = Code + Int2CodeStr(Lumber,4) endif if udg_zz_SaveLoadSettings[4] then set Code = Code + TertiaryStringOp(UnitItemInSlotBJ(U,1) != null,DebugIdInteger2IdString(GetItemTypeId(UnitItemInSlotBJ(U,1))),"X") set Code = Code + TertiaryStringOp(UnitItemInSlotBJ(U,2) != null,DebugIdInteger2IdString(GetItemTypeId(UnitItemInSlotBJ(U,2))),"X") set Code = Code + TertiaryStringOp(UnitItemInSlotBJ(U,3) != null,DebugIdInteger2IdString(GetItemTypeId(UnitItemInSlotBJ(U,3))),"X") set Code = Code + TertiaryStringOp(UnitItemInSlotBJ(U,4) != null,DebugIdInteger2IdString(GetItemTypeId(UnitItemInSlotBJ(U,4))),"X") set Code = Code + TertiaryStringOp(UnitItemInSlotBJ(U,5) != null,DebugIdInteger2IdString(GetItemTypeId(UnitItemInSlotBJ(U,5))),"X") set Code = Code + TertiaryStringOp(UnitItemInSlotBJ(U,6) != null,DebugIdInteger2IdString(GetItemTypeId(UnitItemInSlotBJ(U,6))),"X") endif if udg_zz_SaveLoadSettings[5] then set Uid = GetUniqueEinheitsnummer(U) set Code = Code + Int2CodeStr(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill1[Uid],U),1) set Code = Code + TertiaryStringOp(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill1[Uid],U) > 0,DebugIdInteger2IdString(udg_zz_HeroSkill1[Uid]),"") set Code = Code + Int2CodeStr(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill2[Uid],U),1) set Code = Code + TertiaryStringOp(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill2[Uid],U) > 0,DebugIdInteger2IdString(udg_zz_HeroSkill2[Uid]),"") set Code = Code + Int2CodeStr(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill3[Uid],U),1) set Code = Code + TertiaryStringOp(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill3[Uid],U) > 0,DebugIdInteger2IdString(udg_zz_HeroSkill3[Uid]),"") set Code = Code + Int2CodeStr(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill4[Uid],U),1) set Code = Code + TertiaryStringOp(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill4[Uid],U) > 0,DebugIdInteger2IdString(udg_zz_HeroSkill4[Uid]),"") set Code = Code + Int2CodeStr(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill5[Uid],U),1) set Code = Code + TertiaryStringOp(GetUnitAbilityLevelSwapped(udg_zz_HeroSkill5[Uid],U) > 0,DebugIdInteger2IdString(udg_zz_HeroSkill5[Uid]),"") endif set Final = ColorHeroCode(AddScores(AssembleCode(AssembleCode(Code)))) set udg_Notes[Player(P)] = Final call DisplayTimedTextToPlayer(P,0,0,300,Final) endfunction I wnt udg_Notes[Player(P)] = Final to store the save code aswell for other reasons, yet it comes up with Invalid Thingy:( Btw this trigger doesnt actually work:P it comes up with the invalid thing :((( |
| 10-09-2006, 09:18 AM | #4 |
plz say types of vars in your code. ColorHeroCode returns what? |
| 10-09-2006, 09:30 AM | #5 |
I dont know! it isnt my code This is a built in function for WEU World Editor Unlimited - Has a built in save code, im trying to add a small line of code "that saves" it, to another variable, however I dont know what any of it does, I dont know what it returns, you could easily, make a map, add "Advanced" triggers with WEU enhancer, and then look at map script, you could see yourself, honestly I dont know what it does lol |
