library(tidyverse)
library(jmv)

df <- structure(
  list(
    Person_Condition = structure(
      c(
        2L,
        2L,
        1L,
        1L,
        2L,
        2L,
        1L,
        2L,
        2L,
        2L,
        1L,
        2L,
        1L,
        1L,
        1L,
        1L,
        2L,
        2L,
        2L,
        1L
      ),
      .Label = c("Friend", "Foe"),
      class = "factor"
    ),
    NowPerson_M_Overall = c(
      4.75,
      3.25,
      4.75,
      7,
      3.25,
      2.25,
      5.5,
      3,
      2,
      2.5,
      6,
      4.5,
      7,
      5.25,
      7,
      5,
      4.75,
      3.75,
      2,
      5.5
    ),
    NowPerson_W_Overall = c(
      4.5,
      3.75,
      4.5,
      5.75,
      4,
      3.75,
      6,
      4.25,
      3,
      3.75,
      5.25,
      2.75,
      6.5,
      5.25,
      6.25,
      6,
      2.5,
      2.25,
      3,
      4.75
    ),
    NowPerson_C_Overall = c(
      6.75,
      4.75,
      5.75,
      7,
      4.25,
      3.25,
      4.75,
      2,
      4.75,
      4.25,
      4.5,
      3,
      7,
      5.75,
      7,
      4.25,
      4.25,
      2.5,
      1.25,
      5
    ),
    Morality = c(
      2.75,
      4.5,
      5.25,
      6.5,
      2.75,
      1.5,
      6.75,
      1.5,
      2.375,
      1.5,
      5.5,
      3.375,
      6.625,
      5.375,
      4.25,
      3.25,
      4.5,
      7,
      2.375,
      3.5
    ),
    Sociability = c(
      3.875,
      3,
      4.625,
      4,
      2.625,
      4.25,
      5.125,
      2.75,
      3.5,
      1.75,
      4,
      3.875,
      6.375,
      5.125,
      4.75,
      5.375,
      3.875,
      5.5,
      2.5,
      3.125
    ),
    Competence = c(
      3.5,
      3.5,
      5,
      4.375,
      3.5,
      4.25,
      5,
      1.5,
      5.75,
      2,
      2.875,
      3.125,
      6.875,
      5.5,
      4.25,
      2.875,
      3.5,
      6.5,
      1,
      2.875
    ),
    Memories = c(
      3.25,
      2.75,
      4.625,
      1.75,
      3.375,
      4.25,
      4.125,
      1.25,
      2.875,
      2.5,
      1,
      3,
      4.25,
      5.5,
      4.5,
      5.25,
      2.5,
      2.5,
      2.875,
      3.125
    ),
    Preferences = c(
      2.375,
      2.125,
      2.25,
      1.5,
      3,
      3.75,
      2.75,
      2,
      1.25,
      1.25,
      1.75,
      2.5,
      4.25,
      5.375,
      4.125,
      5.125,
      1.75,
      2,
      3.25,
      2.5
    )
  ),
  row.names = c(NA,-20L),
  class = "data.frame"
)

jmv::anovaRM(
  data = df,
  rm = list(
    list(
      label="Change",
      levels=c(
        "Morality",
        "Sociability",
        "Competence",
        "Memories",
        "Preferences"))),
  rmCells = list(
    list(
      measure="Morality",
      cell="Morality"),
    list(
      measure="Sociability",
      cell="Sociability"),
    list(
      measure="Competence",
      cell="Competence"),
    list(
      measure="Memories",
      cell="Memories"),
    list(
      measure="Preferences",
      cell="Preferences")),
  bs = Person_Condition,
  cov = vars(NowPerson_M_Overall, NowPerson_W_Overall, NowPerson_C_Overall),
  rmTerms = ~ Change,
  bsTerms = ~ Person_Condition + NowPerson_M_Overall + NowPerson_W_Overall + NowPerson_C_Overall,
  postHoc = list(),
  postHocCorr = "bonf")
