/fskin [Ultimate Script]

  • Ultimate

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • /fskin [Ultimate Script]

    Guten Tag,

    Ich hab ein Problem, un zwar wenn man /fskin macht wird der Zivilisten skin "überschrieben" wenn man /fskin mehrfach eingibt kommen nur die Fraktion Skins (eine Tabelle wird durchgegangen). Wie kann ich das so machen, dass die Fraktionisten wieder aus dem /fskin raus können und wieder in den Zivilisten skin wechseln können?

    #Dankeimvoraus


    Mit freundlichen Grüßen,

    AnaConDaa


    PS: /fskin code:

    LUA-Quellcode

    1. function fskin_func ( player )
    2. local curskin = getElementModel ( player )
    3. local faction = getPlayerFaction ( player )
    4. local onduty = isOnDuty(player)
    5. local val = false
    6. if getPedOccupiedVehicle ( player ) then
    7. outputChatBox ( "Bitte nutze diesen Befehl nur ausserhalb von Fahrzeugen!", player, 125, 0, 0 )
    8. elseif faction == 6 and onduty and curskin ~= 285 then
    9. for i=1, #factionSkins[6] do
    10. if factionSkins[6][i] == curskin then
    11. val = i
    12. break
    13. end
    14. end
    15. if val == false or val == #factionSkins[6] then
    16. setElementModel ( player, factionSkins[6][1] )
    17. return
    18. else
    19. setElementModel ( player, factionSkins[6][val+1] )
    20. return
    21. end
    22. elseif faction == 8 then
    23. for i=1, #factionSkins[8] do
    24. if factionSkins[8][i] == curskin then
    25. val = i
    26. break
    27. end
    28. end
    29. if val == false or val == #factionSkins[8] then
    30. setElementModel ( player, factionSkins[8][1] )
    31. return
    32. else
    33. setElementModel ( player, factionSkins[8][val+1] )
    34. return
    35. end
    36. elseif faction == 1 and onduty and allowToChangeSkin and curskin ~= 285 then
    37. for i=1, #factionSkins[1] do
    38. if factionSkins[1][i] == curskin then
    39. val = i
    40. break
    41. end
    42. end
    43. if val == false or val == #factionSkins[1] then
    44. setElementModel ( player, factionSkins[1][1] )
    45. return
    46. else
    47. setElementModel ( player, factionSkins[1][val+1] )
    48. return
    49. end
    50. elseif faction and faction > 1 and faction ~= 10 and faction ~= 11 and faction ~= 6 and faction ~= 8 then
    51. for i, skin in pairs (factionSkins[faction]) do
    52. if skin == getElementModel(player) then
    53. val = i
    54. break
    55. end
    56. end
    57. if val == false or val == #factionSkins[faction] then
    58. setElementModel ( player, factionSkins[faction][1] )
    59. vioSetElementData ( player, "skinid", factionSkins[faction][1] )
    60. return
    61. else
    62. setElementModel ( player, factionSkins[faction][val+1] )
    63. vioSetElementData ( player, "skinid", factionSkins[faction][val+1] )
    64. return
    65. end
    66. else
    67. outputChatBox ( "Du darfst diesen Befehl nicht benutzen!", player, 125, 0, 0 )
    68. end
    69. end
    70. addCommandHandler ( "fskin", fskin_func )
    Alles anzeigen
  • Zum Hilfreichsten Beitrag springen

  • Nein, sorry ich meinte als Böser Fraktionist (da gibts kein Duty :P ) und

    LUA-Quellcode

    1. factionSkins[2] = { 111, 112, 113, 124, 125, 126, 127, 237, 211, 272 } --- Da ist die Reihenfolge vom /fskin skinwechsel, hinter ID 272 soll der Ziviskin hin den man vorher hatte (bevor man /fskin eingegeben hat)
  • fs626 schrieb:

    AnaConDaa schrieb:

    vioSetElementData ( player, "skinid", factionSkins[faction][1] )
    Einfach das jeweils entfernen und gut ist. Damit wird der Ziviskin dann nicht mehr überschrieben, der Frakiskin ist nur noch temporär.
    Sag am besten die Zeilen damit ich keine Fehler mache^^

    edit: Funktioniert immer noch nicht. (hatte es entfernt)

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Ted ()

  • BlackReaper schrieb:

    Man könnte ja auch sagen, wenn sie ihren Skin haben wollen den sie davor hatten Kleiderladen aufsuchen, denn wenn man den Skin wieder kauft wird der gekaufte gesettet.
    Ist halt auch eine Möglichkeit die ich kenne, doch die vioSetElementData Zeile zu entfernen ist einfacher.

    Ne das wäre zu nervig auf dauer. Ich wollte das so haben, dass wenn die /fskin machen diese skintabelle durchgehen nachdem der letzte skin kam und fskin eingetippt wurde das man dann in den Ziviskin zurück kommt
  • Hannibal_Smith schrieb:

    Du könntest auch einfach den Zivi Skin wieder einfügen sprich ihn in die Reihe der fraktion skins mit reinpacken.
    Oder du schreibst ne Funktion die mit /ziviskin oder so wieder den Zivi Skin verleiht.

    Ich hätte das gerne so, dass die Skins die man bei /fskin bekommt nur Temporär gesetzt werden ( also nicht in DB gespeichert werden) dann kann man das mit dem Ziviskin einfach machen. Bloß die frage ist wie kann ich jemandem per Script einen Temporären skin setten?
  • AnaConDaa schrieb:

    PS: /fskin code:

    LUA-Quellcode

    1. function fskin_func ( player )
    2. local curskin = getElementModel ( player )
    3. local faction = getPlayerFaction ( player )
    4. local onduty = isOnDuty(player)
    5. local val = false
    6. if getPedOccupiedVehicle ( player ) then
    7. outputChatBox ( "Bitte nutze diesen Befehl nur ausserhalb von Fahrzeugen!", player, 125, 0, 0 )
    8. elseif faction == 6 and onduty and curskin ~= 285 then
    9. for i=1, #factionSkins[6] do
    10. if factionSkins[6][i] == curskin then
    11. val = i
    12. break
    13. end
    14. end
    15. if val == false or val == #factionSkins[6] then
    16. setElementModel ( player, factionSkins[6][1] )
    17. return
    18. else
    19. setElementModel ( player, factionSkins[6][val+1] )
    20. return
    21. end
    22. elseif faction == 8 then
    23. for i=1, #factionSkins[8] do
    24. if factionSkins[8][i] == curskin then
    25. val = i
    26. break
    27. end
    28. end
    29. if val == false or val == #factionSkins[8] then
    30. setElementModel ( player, factionSkins[8][1] )
    31. return
    32. else
    33. setElementModel ( player, factionSkins[8][val+1] )
    34. return
    35. end
    36. elseif faction == 1 and onduty and allowToChangeSkin and curskin ~= 285 then
    37. for i=1, #factionSkins[1] do
    38. if factionSkins[1][i] == curskin then
    39. val = i
    40. break
    41. end
    42. end
    43. if val == false or val == #factionSkins[1] then
    44. setElementModel ( player, factionSkins[1][1] )
    45. return
    46. else
    47. setElementModel ( player, factionSkins[1][val+1] )
    48. return
    49. end
    50. elseif faction and faction > 1 and faction ~= 10 and faction ~= 11 and faction ~= 6 and faction ~= 8 then
    51. for i, skin in pairs (factionSkins[faction]) do
    52. if skin == getElementModel(player) then
    53. val = i
    54. break
    55. end
    56. end
    57. if val == false or val == #factionSkins[faction] then
    58. setElementModel ( player, factionSkins[faction][1] )
    59. vioSetElementData ( player, "skinid", factionSkins[faction][1] )
    60. return
    61. else
    62. setElementModel ( player, factionSkins[faction][val+1] )
    63. vioSetElementData ( player, "skinid", factionSkins[faction][val+1] )
    64. return
    65. end
    66. else
    67. outputChatBox ( "Du darfst diesen Befehl nicht benutzen!", player, 125, 0, 0 )
    68. end
    69. end
    70. addCommandHandler ( "fskin", fskin_func )
    Alles anzeigen
    Entweder bin ich Blind auf 3 Augen oder da steht nirgends was was mit DB zutun haben könnte
  • Hilfreich

    AnaConDaa schrieb:

    AnaConDaa schrieb:

    PS: /fskin code:

    LUA-Quellcode

    1. function fskin_func ( player )
    2. local curskin = getElementModel ( player )
    3. local faction = getPlayerFaction ( player )
    4. local onduty = isOnDuty(player)
    5. local val = false
    6. if getPedOccupiedVehicle ( player ) then
    7. outputChatBox ( "Bitte nutze diesen Befehl nur ausserhalb von Fahrzeugen!", player, 125, 0, 0 )
    8. elseif faction == 6 and onduty and curskin ~= 285 then
    9. for i=1, #factionSkins[6] do
    10. if factionSkins[6][i] == curskin then
    11. val = i
    12. break
    13. end
    14. end
    15. if val == false or val == #factionSkins[6] then
    16. setElementModel ( player, factionSkins[6][1] )
    17. return
    18. else
    19. setElementModel ( player, factionSkins[6][val+1] )
    20. return
    21. end
    22. elseif faction == 8 then
    23. for i=1, #factionSkins[8] do
    24. if factionSkins[8][i] == curskin then
    25. val = i
    26. break
    27. end
    28. end
    29. if val == false or val == #factionSkins[8] then
    30. setElementModel ( player, factionSkins[8][1] )
    31. return
    32. else
    33. setElementModel ( player, factionSkins[8][val+1] )
    34. return
    35. end
    36. elseif faction == 1 and onduty and allowToChangeSkin and curskin ~= 285 then
    37. for i=1, #factionSkins[1] do
    38. if factionSkins[1][i] == curskin then
    39. val = i
    40. break
    41. end
    42. end
    43. if val == false or val == #factionSkins[1] then
    44. setElementModel ( player, factionSkins[1][1] )
    45. return
    46. else
    47. setElementModel ( player, factionSkins[1][val+1] )
    48. return
    49. end
    50. elseif faction and faction > 1 and faction ~= 10 and faction ~= 11 and faction ~= 6 and faction ~= 8 then
    51. for i, skin in pairs (factionSkins[faction]) do
    52. if skin == getElementModel(player) then
    53. val = i
    54. break
    55. end
    56. end
    57. if val == false or val == #factionSkins[faction] then
    58. setElementModel ( player, factionSkins[faction][1] )
    59. vioSetElementData ( player, "skinid", factionSkins[faction][1] )
    60. return
    61. else
    62. setElementModel ( player, factionSkins[faction][val+1] )
    63. vioSetElementData ( player, "skinid", factionSkins[faction][val+1] )
    64. return
    65. end
    66. else
    67. outputChatBox ( "Du darfst diesen Befehl nicht benutzen!", player, 125, 0, 0 )
    68. end
    69. end
    70. addCommandHandler ( "fskin", fskin_func )
    Alles anzeigen
    Entweder bin ich Blind auf 3 Augen oder da steht nirgends was was mit DB zutun haben könnte
    setElememtData ???
    Der Wert wird nach dem Ausloggen oder nach Ablauf des Speicherungstimers in die DB geschrieben.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von fs626 ()

  • fs626 schrieb:

    AnaConDaa schrieb:

    AnaConDaa schrieb:

    PS: /fskin code:

    LUA-Quellcode

    1. function fskin_func ( player )
    2. local curskin = getElementModel ( player )
    3. local faction = getPlayerFaction ( player )
    4. local onduty = isOnDuty(player)
    5. local val = false
    6. if getPedOccupiedVehicle ( player ) then
    7. outputChatBox ( "Bitte nutze diesen Befehl nur ausserhalb von Fahrzeugen!", player, 125, 0, 0 )
    8. elseif faction == 6 and onduty and curskin ~= 285 then
    9. for i=1, #factionSkins[6] do
    10. if factionSkins[6][i] == curskin then
    11. val = i
    12. break
    13. end
    14. end
    15. if val == false or val == #factionSkins[6] then
    16. setElementModel ( player, factionSkins[6][1] )
    17. return
    18. else
    19. setElementModel ( player, factionSkins[6][val+1] )
    20. return
    21. end
    22. elseif faction == 8 then
    23. for i=1, #factionSkins[8] do
    24. if factionSkins[8][i] == curskin then
    25. val = i
    26. break
    27. end
    28. end
    29. if val == false or val == #factionSkins[8] then
    30. setElementModel ( player, factionSkins[8][1] )
    31. return
    32. else
    33. setElementModel ( player, factionSkins[8][val+1] )
    34. return
    35. end
    36. elseif faction == 1 and onduty and allowToChangeSkin and curskin ~= 285 then
    37. for i=1, #factionSkins[1] do
    38. if factionSkins[1][i] == curskin then
    39. val = i
    40. break
    41. end
    42. end
    43. if val == false or val == #factionSkins[1] then
    44. setElementModel ( player, factionSkins[1][1] )
    45. return
    46. else
    47. setElementModel ( player, factionSkins[1][val+1] )
    48. return
    49. end
    50. elseif faction and faction > 1 and faction ~= 10 and faction ~= 11 and faction ~= 6 and faction ~= 8 then
    51. for i, skin in pairs (factionSkins[faction]) do
    52. if skin == getElementModel(player) then
    53. val = i
    54. break
    55. end
    56. end
    57. if val == false or val == #factionSkins[faction] then
    58. setElementModel ( player, factionSkins[faction][1] )
    59. vioSetElementData ( player, "skinid", factionSkins[faction][1] )
    60. return
    61. else
    62. setElementModel ( player, factionSkins[faction][val+1] )
    63. vioSetElementData ( player, "skinid", factionSkins[faction][val+1] )
    64. return
    65. end
    66. else
    67. outputChatBox ( "Du darfst diesen Befehl nicht benutzen!", player, 125, 0, 0 )
    68. end
    69. end
    70. addCommandHandler ( "fskin", fskin_func )
    Alles anzeigen
    Entweder bin ich Blind auf 3 Augen oder da steht nirgends was was mit DB zutun haben könnte
    setElememtData ???Der Wert wird nach dem Ausloggen oder nach Ablauf des Speicherungstimers in die DB geschrieben.


    Danke, danke.

    Nachdem ich das Video hier gesehen hab, hab ich verstanden wozu SetElementData da ist:



    edit: Das Funktioniert.

    Bloß jetzt hab ich noch ein Problem:


    LUA-Quellcode

    1. local ziviskin = setPedSkin ( player, vioGetElementData ( player, "skinid" ) )
    2. factionSkins = {}
    3. factionSkins[1] = { 280, 281, 282, 283, 284, 288, 265, 266, 267 }
    4. factionSkins[2] = { 111, 112, 113, 124, 125, 126, 127, 237, 211, 272 }
    5. factionSkins[3] = { 49, 117, 118, 120, 122, 123, 141, 169, 186, 294 }
    6. factionSkins[4] = { 221, 222, 220, 143, 142, 307, ziviskin } -- Das funzt. nicht man bekommt den CJ skin (ID 0)
    7. factionSkins[5] = { 59, 141, 187, 188, 189, 296 }
    8. factionSkins[6] = { 286, 165, 164, 163, 295 }
    9. factionSkins[7] = { 173, 174, 175, 115, 114, 116, 292 }
    10. factionSkins[8] = { 287, 312, 191 }
    11. factionSkins[9] = { 100, 247, 248, 44, 299, 291 }
    12. factionSkins[10] = { 274, 275, 276, 70 }
    13. factionSkins[11] = { 305, 268, 201, 128, 50, 42 }
    Alles anzeigen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Ted ()